欢迎来到天天文库
浏览记录
ID:45541513
大小:159.50 KB
页数:12页
时间:2019-11-14
《使用BPEL构建Web服务网络》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、使用BPEL构建Web服务网络【2005-12-2709:47】【】【Oracle】 受不断成熟的Web服务标准的鼓舞,越来越多的组织正在协作环境中使用Web服务。BPEL正快速成为为实现企业间协作而编排这些Web服务的平台。BPEL为构建在线市场或协作网络的公司提供了引人瞩目的好处,即基于标准的方法和松散耦合的流程集成。 而Web服务提供的激动人心的新功能却隐藏着某些风险。在许多情况下,如果在设计时未解决某些技术和管理难题,则合作伙伴关系将会破裂或集成成本飙升: ·合作伙伴必须事先进行充分的协商,约定根据特定标准开展业务。传输协议、交互目的、消息格式以及业务约束必须实现清晰地
2、通信。 ·连接网络必须是一个简单的过程;协作网络主要通过不断壮大取得成功。 ·用户必须在运行时轻松地找到业务服务,否则将在很大程度上无法实现面向服务体系结构(SOA)这一承诺。(服务信息库在这方面很有用。)如果开发人员无法轻松地找到和重用服务,则这些服务本质上就算不存在。 ·合作伙伴应能够实时监控Web服务。最终用户应能跟踪特定订单的进度,并且贸易合作伙伴应能诊断业务流程中的特定瓶颈。 如果协作网络在托管环境中运行,这些难题将变得更为棘手。在该模型中,合作伙伴将他们原有应用程序提供的功能公开到Web服务中,并将此Web服务发布到集中的信息库中。主机负责编排复杂的业务流程,后者
3、反过来利用合作伙伴的Web服务。 在BPEL指南的这一部分中,我将把欧洲航天局(ESA)项目(来自Spacebels.a.的小组参与了该项目)作为一个案例分析,介绍与这些挑战相关的体系结构注意事项。此外,我还将介绍该项目如何利用BPEL作用域、BPEL域和OracleBPEL流程管理器API构建一个“易于合作伙伴使用的”协作网络。 ESA网络概述 ESA已着手制定一个战略性计划,旨在完全基于开放标准创建一个BPEL驱动的服务提供商协作网络。该网络称作服务支持环境(SSE)网络,它组合第三方的地球观测(EO)和地理信息系统(GIS)服务,提供增值的复合型服务。SSE是一个不断壮大
4、的网络,目前包括遍布9个不同国家/地区的20多个合作伙伴。 如图1所示,SSE是一个支持BPEL的网络的简单实现。ESA充当中介,它使用各种Web服务标准(如SOAP、WSDL、WS-Addressing、WS-Inspection等)为不同合作伙伴之间基于流程的协作提供支持。该网络在集中星型拓扑环境中运行:服务提供商使用OracleBPELDesigner将不同类型的地球观测和GIS服务集中到一个信息库中,从而创建了一个不断扩大的服务目录。 图1SSE体系结构 SSE提供执行以下任务所必需的基础架构 ·承载和管理充当可用服务目录的中央信息库 ·在中央目录内部注册和搜索服务
5、 ·在OracleBPEL引擎内部执行短期和长期的业务流程 ·使合作伙伴能够使用OracleBPEL流程管理器控制台监控Web服务的执行 最终用户通过浏览可用服务目录请求特定服务。SSE根据请求调用相关的业务流程。该业务流程调用Web服务(运行在服务提供商处)来完成请求。 SSE支持同步和异步的交互模型。ESA广泛使用OracleBPEL流程管理器API来为提供商和最终用户提供最大程度的灵活性和易用性体验。设计Web服务网络 开放标准正在不断改变集成的规则。BPEL提供了一个以流程为中心的跨企业集成方法,因此可以使用BPEL流程流定义合作伙伴集成。SOA与BPEL的这一组合
6、为构建松散耦合的协作网络提供了一个前所未有的良机。 集中星型(SSE采用的方法)是一个广泛使用的网络拓扑,组织通过它与各种合作伙伴建立连接。网络也可以采用单向对等模型。这种情况下,每个合作伙伴都为Web服务安全性和供应提供了一个平台。 现在,我们来看网络设计的四个方面: ·设置接口关系 ·简化合作伙伴支持 ·创建集中的服务注册表 ·为合作伙伴和最终用户提供自助监视功能 设置接口关系。协作网络设计从定义参与规则开始。这些规则指定在业务流程中交换的消息、这些消息的交换顺序以及该消息的物理属性。要正确通信,所有合作伙伴都必须能够回答以下问题。 ·交互的目的—是请求报价还是订
7、单? ·消息格式-消息是如何编码的? ·词汇—应如何构造消息,以便其他各方可以理解和处理它们? ·业务约束-应在多长时间内响应请求? ·通信渠道-是否应把消息加密? 为帮助合作伙伴回答以上问题,ESA公布了一个接口控制文档来定义这些术语。本文档正式确定了在多个ESA赞助的项目中建立、改进和验证的技术集成规则。基于消息的SOAP(通过HTTP或HTTPS实现安全通信)是SSE服务器与服务提供商之间采用的通信协议。(对于本文档,我们将分析WS-Sec
此文档下载收益归作者所有