|
基于SOA的服务组合技术研究SOA架构以服务为基本单元,通过把不同应用封装成统一的Web服务来屏蔽系统间的差异性;以服务作为构建时的基础组件,通过服务组合技术对散列的组件进行组合。 图2 BPEL规范与相关技术标准的关系示意图 BPEL规范描述的是各成员服务何时、为何、以何种顺序被调用,还为服务提供错误处理和补偿机制。因此,基于BPEL 规范的流程定义总体可分为三个部分,这三部分之间的关系如图3所示。 图3 BPEL流程规范分类示意图 3.基于BPEL 的服务组合实现方法 基于BPEL 的服务组合方法可归纳为两个部分,一是为业务流程中涉及的每个活动设定一个抽象服务,形成抽象服务流程定义;二是执行前通过中间环节进行服务匹配和绑定,将每个抽象服务替换成一个实体服务,将抽象服务转换成实际的符合BPEL 规范的业务流程文档,此部分是整个方法实现的核心。 3.1 抽象服务流程定义 由于BPEL 业务流程通过WSDL 技术规范对其与成员服务之间交互的接口进行描述,相关活动的实现要发布成WSDL 文件描述的服务。这些生成的WSDL 文件即为抽象服务流程定义。在本文中Web 服务是基于Axis2 框架搭载Tomcat 服务器发布实现的,把Axis2 与平台开发环境进行整合,整合后开发好的类直接在Tomcat 服务器上发布即可通过在浏览器中键入网址获得相应的WSDL描述。 3.2 服务接口的调用 在BPEL 流程中,流程与成员服务之间的交互是通过伙伴链接调用WSDL 描述的服务接口实现的,因此,服务接口的调用是对伙伴链接的定义。在实际执行过程中,难免会发生错误或者异常,需要对其进行处理以及进行一些必要的补偿操作。使用流程处理器可以提高服务质量,增强BPEL 流程的健壮性。在业务流程中,可能发生人工审批和业务取消同时操作并生效的错误,此时需要添加错误处理器捕获错误和补偿处理器添加补偿措施。 责编:王雅京 微信扫一扫实时了解行业动态 微信扫一扫分享本文给好友 著作权声明:畅享网文章著作权分属畅享网、网友和合作伙伴,部分非原创文章作者信息可能有所缺失,如需补充或修改请与我们联系,工作人员会在1个工作日内配合处理。 |
推荐博客 |
|