集团型企业异构系统的中间件集成方案

互联网 | 编辑: 何毅 2011-04-03 00:00:00转载 一键看全文

本文提出一种基于SOA的中间件解决方案,通过构建一个松散耦合的异构系统集成服务平台.实现集团型企业的多个异构业务系统的集成,同时继承企业已有的IT资产,并提供丰富的管理功能。

SOA的异构集成服务

3.3业务集成和服务编排

为了实现跨应用域的业务过程的集成,需要将业务流程逻辑从程序逻辑中显式地分离出来.利用针对业务过程的模型和工具进行管理,使平台支持的业务系统对流程变迁有最大的灵活性。主要通过以下四部分实现:

业务建模建模是对实际业务流程的抽象,业务领域专家可选用适当的流程建模工具对跨域业务流程建模,业务流程模型将作为集成平台服务编排模块的输入。

服务编排服务的编排是从流程模型到Web服务组合的映射,本平台利用BPEL(Rusiness Process Execution Ian}uage)作为编排语言,根据业务模型对已有的细粒度服务进行编排形成复杂的业务服务。平台对服务编排的支持包括服务注册库、交互式编排界面以及编排语言1编排引擎三部分:服务注册库支持Web服务发现。编排引擎通过调用平台的服务注册库获取组成业务过程的细粒度服务的相关信息,包括服务契约、访问规则和策略安全/权限属性等。交互式编排界面将BPEL中定义的任务和被调用服务表示为可视化的图形节点和连接,并定义节点间的时序、调用、分支选择等关系,业务领域专家或IT人员可以通过该界面将抽象业务模型映射到Web服务的调用关系,并将整个流程发布为复杂的业务服务。编排语言及编排引擎将来自交互界面的图元及其关系自动映射输出为BPEL文件;并生成合成服务的业务契约和访问策略。

发布和部署编排的结果是可执行的业务服务,和与之对应的流程控制脚本。将业务服务注册至平台的服务注册库,注册的信息包含服务的契约、访问策略及服务与流程控制脚本的关联。

流程的执行运行时引擎在流程服务执行期解析流程脚本,创建流程实例,根据控制流结构调用原子服务;同时在必要时调用错误处理或事务处理机制。

3.4集成平台的管理功能

集成服务平台的管理功能主要解决服务注册管理、安全/权限管理和事务处理问题。

服务注册管理服务注册和发现技术大体分为基于开放标准的(如UDDD和基于私有框架的两类。UDDI作为主要面向公共领域的服务发现规范,不甚适合本平台应用集成场合的需求,因此集成服务平台将采用一个私有注册库,通过层次模型为服务的调用者提供静态的精确服务匹配。对服务注册信息的存储既包括UDDI标准提供的业务实体、服务描述、绑定信息、调用规范,也包括UDDI难以提供的WSDL契约文件、安全角色、事务支持等。

安全/权限管理以往的Web服务安全的讨论议题,大多集中在单个应用域内的安全机制和访问控制,对穿越多个防火墙边界的服务访问,基本上不采取集中式的解决方案。鉴于集团型企业的各应用域间具有明确的层次关系和跨域流程关联,在集成服务平台建立一个全局认证和授权中心GAAC(Global Authorization and Authentication Center),提供统一的安全和权限管理,实现基于角色的授权机制,显式地将安全逻辑和业务逻辑分离。

基于角色的访问控制一般应用在单个应用域内,在跨域访问的场合该机制的应用受限,因为每个域都不持有其他域的最终用户(End User)身份及访问规则。本平台的解决方案是:对于跨域的服务调用,通过总部集中式地进行身份验证,授予服务调用者一个抽象代理用户身份,利用该抽象身份调用另一域内的服务。其好处主要有:①对于无需跨域的服务访问,各域仍可独立地实现基于最终用户的授权,无需持有其他域的最终用户身份;②总部可全局地管理全平台的服务授权;③保待了基子角色的安全机制灵活的管理和授权功能。

服务认证授权系统的结构如上图所示,由位于总部的GAAC和多个位于企业的企业授权验证中心EAAC(EnterpriseAuthorization a司Authentication Cenler)组成,EAAC是GAAC在企业域内的代理。权限可由服务提供者声明也可由总部全局地设定。

一次典型的跨域服务调用①服务调用方EAAC1将最终用户身份卿果需要的话)转换为一个代理用户,向GAAC发起调用请求;)GA.AC根据鉴权结果,向EAACI发布一个合法性令牌或拒绝访问消息(鉴权服务响应);③EAAC1持有该令牌向服务提供方EAAC2发起调用请求;④被调用服务传回业务数据响应。

事务处理如果一个业务服务需要平台提供事务支持,在服务设计期应引入平台提供的事务服务,且组成该业务服务的子服务需满足一定的条件:提供支持回滚的方法;支持向事务服务主动报告状态;支持事务服务对其查询状态。业务服务被调用时,先向平台的服务协调器(Coordinator)注册一个事务实例,其他参与的子服务依次加人这个事务实例;每个子服务完成操作后向协调器报告状态,协调器根据全部子服务的报告确定事务执行的策略。

对于协调器而言,参与者有两种操作类型(读和写),以及三种结果状态:准备好(prepared),表明执行成功;失败(failed),需要回滚或补偿;未决(indoubt),协调器失去与参与者的联系,参与者的执行结果未知。而参与者的执行结果仪有准备好和失败两种类型,而由底层业务系统保证其域内的事务支持特性。全部的参与者状态报告均为prepared时事务执行成功;如果存在其他状态,协调器采取采取以下策略:

4、总结

本文提出一种基于SOA架构实现集团型企业的多个私有应用域跨Internet集成的中间件平台。该平台提供工具对遗留系统进行服务封装;提供基于BPEL的服务编排引擎实现模型驱动、面向流程的服务编排;提供私有的层次模型用于平台服务的统一注册和发现,并着重解决分布异构环境下服务集成的授权和访问控制,事务支持等特殊问题。该平台推进了多个程序域间的深度集成和总部对业务的全局管理,具有良好的应用前景。本文作者创新点:将Web服务技术运用于集团型企业异构系统的信息集成,提出了实现数据和应用集成的一种解决方案。
 

提示:试试键盘 “← →” 可以实现快速翻页 

总共 2 页< 上一页12
一键看全文

本文导航

相关阅读

每日精选

点击查看更多

首页 手机 数码相机 笔记本 游戏 DIY硬件 硬件外设 办公中心 数字家电 平板电脑