您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 能源与动力工程 > 基于ESB的企业应用集成
基于ESB的企业应用集成薛涛崔健杨帆1、引言信息化的发展在给企业带来难得机遇的同时,也给企业带来了新的挑战。巨大的投资为企业建立了众多的信息系统,以帮助企业进行内外部业务的处理和管理工作。但是这些信息系统可能由不同的品牌导入实施,只关注于各自领域内的数据与业务处理,由于缺少相应的接口标准和规范,它们各自为政,相互之间无法进行信息共享与业务集成,从而形成“信息孤岛”。随着企业规模的不断扩大,应用系统不断增加,对信息共享、系统互操作性和软件重用方面的要求越来越高,这些相对独立、标准各异的“烟囱”式系统已经不能满足业务的需要,暴露出的弊端越来越多,对企业提出了诸多的挑战。由于缺少统筹规划,企业内部遗留的IT基础架构庞大且管理起来极其复杂,这些基础架构具有严格的操作要求,分阶段改造非常困难,这样必然会影响企业对客户需求的响应能力以及新增加和改进后的服务的部署。一个个的“信息孤岛”常常分属于不同的管理职能部门。由于这些系统没有进行互联,导致难于信息共享,即不同软件提供商的应用程序之间无法互操作。在多个系统共存的情况下,同一个客户的信息或者企业的信息,通常在多个系统中同时存在,但是各个系统统计出的数据常常不一致,为企业领导层进行正确决策增加了难度。面对这样的挑战,系统整合成为企业迫在眉睫的问题。企业迫切需要一种集成方法,将各种旧的应用系统和新的应用系统集成起来,这使得企业应用集成(EnterpriseApplicationIntegration,EAI)技术产生与发展起来。传统的EAI往往使用如CORBA和COM等组件化技术进行分布式、跨平台的程序交互,系统整体的拓扑结构较复杂,组件的连接协议是私有的、非标准的。其存在着诸如系统灵活性差、投入成本巨大、新系统无法快速部署等问题,不能很好的满足企业集成的需求。在这种背景下,业内近年来提出了SOA(面向服务的架构)模型,将应用系统抽象成一个个粗粒度的服务,标准化服务接口,松耦合服务架构。使用面向服务的ESB平台集成遗留IT系统,将系统服务化,通过服务组合的方式复用企业IT资产,对于新开发的信息系统,采用插接方式进行快速部署,缩短了投资回报周期,提高了系统的适应性、灵活性和扩展性。采用这种面向服务的ESB平台进行系统整合,成为当前企业解决“信息孤岛”的最佳方案。2、SOA和ESB2.1面向服务架构SOA面向服务架构(ServiceOrientedArchitecture,SOA)是一种新型的软件体系架构模式,它是在计算环境下设计、开发、应用、管理分散服务单元的一种规范,它将应用程序的不同功能单元(称为服务)通过服务间定义良好的接口和契约联系起来。可以根据需求通过网络对松散耦合的粗粒度服务进行分布式部署、组合和使用。SOA的目标在于让IT系统变得更有弹性,以便更灵活、更快地响应不断改变的企业业务需求。目前并没有一个统一、标准的SOA的定义,下面是几种对于SOA的描述:“SOA本质上是服务的集合。服务间彼此通信,这种通信可能是简单的数据传送,也可能是两个或更多的服务协调进行某些活动。服务间需要某些方法进行连接。所谓服务就是精确定义、封装完善、独立于其他服务所处环境和状态的函数。”“按需连接资源的系统。在SOA中,资源被作为可通过标准方式访问的独立服务,提供给网络中的其他成员。与传统的系统结构相比,SOA规定了资源间更为灵活的松散耦合的关系。”“SOA是一种用于创建企业IT系统体系结构的体系结构样式,利用了面向服务的原则来实现业务和支持业务的信息系统之间更为紧密的关系。”从上述的定义中可以看出的几个关键特性:一种粗粒度、松散耦合服务架构,服务之间通过简单、精确定义的接口进行通讯,不涉及底层编程接口和通讯模型。粗粒度性:粗粒度服务提供一项特定的业务功能,采用粗粒度服务接口的优点在于使用者和服务层之间不必再进行多次的往复,一次往复就足够了。松耦合性:松耦合性要求SOA架构中的不同服务之间应该保持一种松耦合的关系,也就是应该保持一种相对独立无依赖的关系。位置透明性,位置透明性要求SOA系统中的所有服务对于他们的调用者来说都是位置透明的,也就是说每个服务的调用者只需要知道他们调用的是哪一个服务,但并不需要知道所调用服务的物理位置在哪里。协议无关性,协议无关性要求每一个服务都可以通过不同的协议来调用。SOA架构的出现为企业系统架构提供了更加灵活的构建方式,如果企业架构设计师基于SOA来构建系统架构,就可以从底层架构的级别来保证整个系统的松耦合性以及灵活性,这将为企业未来商业逻辑的扩展打好坚实的基础。2.2企业服务总线ESB企业服务总线(EnterpriseServiceBus,ESB)是基于SOA思想的企业应用集成的基础软件架构。IDC将ESB定义为:基于开放的标准消息总线,用于通过标准的适配器和接口,来提供各程序和组件之间的互操作功能。它支持相互独立的异构环境中的服务、消息及基于事件的交互,并且具有适当的服务级别和可管理性。ESB作为SOA架构的信息传输龙骨,为SOA提供了一种连通性的基础架构,用以连接SOA中的服务。第三方的程序组件能够以标准的方式“插入”到该平台上运行,组件之间能够以标准的消息通信方式进行交互。ESB克服了传统EAI技术的缺陷,能够对各种技术和应用系统提供支持,具有很强的灵活性和可扩展性。这种模式有助于减少应用接口的数量和复杂性,从而降低IT维护和更改的成本,让企业能够以更简单、更快速、更安全的方式来使用服务。如图1所示,ESB提供了企业内不同应用系统间服务路由的基础设施,仲裁松耦合服务或非关联服务之间的关系,并且实现了SOA各系统服务之间的消息传递,使各系统服务成为SOA的一部分。在ESB内部,通过WSDL这种中立的接口和契约定义格式,每个系统可以将功能展示出来,供其它应用系统调用。ESB支持各种不同的技术,诸如不同的操作系统,编程语言,以及各种消息协议。通过部署ESB,不但可以很容易地把现有遗留系统封装成一个个的服务,也可以快速将新开发的系统部署到整个IT架构中,从而形成真正的随需而变、随需而建和分布式系统结构。图1企业服务总线ESB3、JBI规范JBI(JavaBusinessIntegration)是SUN公司提出的ESB的规范。JBI规范基于SOA的设计思想,解耦了组件之间的联系,并基于标准的消息交互定义了组件之间的交互语义。JBI定义的体系结构允许第三方的组件插入到标准的基础设施上,即使这些组件是由不同提供商提供的,它们也可以以一种可预见的和可靠的方式互操作。如图2所示。图2JBI概念层插件框架这一结构中,组件的交互使用一种经过中介的消息交换机制,该消息交换模式基于WSDL2.0或WSDL1.1。如图3所示。图3JBI组件消息交互JBI规范定义的ESB环境包含3方面内容:标准消息路由器(NormalizedMessageRouter,NMR),JBI管理部分和JBI组件框架。NMR实现组件之间的消息路由,JBI组件框架为JBI组件提供一个可插拔的组件容器,JBI管理部分基于JMX实现JBI环境中系统和组件的管理,JBI环境的组成如图4所示。图4JBI体系结构4、西安协同SOA服务总线SynchroESB西安协同时光软件是国内企业集成技术的先行者,在多年企业流程整合成功实施的基础上,推出了为企业复杂、需求苛刻的异构IT系统集成提供解决方案的SOA服务总线SynchroESB。该产品是一个企业应用集成的开发、部署、运行、管理和维护的协同企业服务总线平台,遵循JCP组织发布的JBI(jsr208)规范,符合JBI、JTA、Webservice、XSLT、SSL、WPDL、BEPL4WS等主流规范,利用标准JMS消息通信机制和高性能的Peer-Peer通信技术,实现了服务之间的通信、连接、组合和数据集成,为企业应用提供了便捷、一致、安全并符合标准的丰富接口,保证服务之间信息的可靠传送,实现不同厂家的数据库、中间件运行平台及其基于这些平台之上开发的应用软件的服务集成。协同SOA服务总线平台是一组可视化工具和后台应用程序的集合,用于构建、配置、部署、监控、管理和运行ESB网络中的服务组合,由工具层、服务总线、消息总线构成。其体系架构如图5所示。服务总线层包含了管理中枢UltraServer(US)、执行容器PeerServer(PS)、组件库等。其中UltraServer是整个SOA平台的管理中枢,负责服务资源管理、安全管理以及将ESB网络中物理分散的PeerServer和系统中提供的各种服务组合成企业级应用,支持对企业总线远程统一管理监控、动态部署和发布。UltraServer具有可扩展的安全管理设计,支持用户验证和访问控制,支持安全的服务注册和图5SynchroESB体系结构部署。PeerServer是一个完整的JBI运行环境,它是SynchroESB的执行容器,PeerServer将动态安装、运行各种适配器组件;管理endpoint端点注册库;按照一定的策略调度endpoint之间的路由;选择合适的通讯机制;通过线程池、集群、负载均衡保证SynchroESB运行时的企业级QOS。消息总线SynchroMQ为协同SOA平台提供消息通信服务,是UltraServer与PeerServer、PeerServer与PeerServer等之间进行交互的消息通道。工具层提供了协同SOA平台的各种图形化的设计监控工具,包括:设计工具SPO(Orchestration),用于服务组合的设计、组件服务类别管理、规则定义,以及服务组合的上传、部署、运行;服务映射和转换工具(Transformer),为用户提供了完全图形化的映射关系配置界面;管理控制台(Console),用于整个SOA平台的初始化配置和运行性能监控管理。图6是设计工具SPO以及服务映射和转换工具Transformer的可视化图形界面。这些可视化工具极大减轻了开发人员的开发工作量并降低了学习的难度。图6SPO和Transformer可视化工具协同SOA平台具有以下技术特色:先进的SOA体系架构平台采用面向服务的架构(SOA)、基于标准的可重用服务组件库,以及开放式体系结构,使协同SOA平台能够最大限度地适应今后的业务发展变化需要。事件驱动(EDA)模型设计事件驱动模式是将服务提供者和消费者之间交互进行解耦,使得集成环境中的各个IT系统可以异步、多对多、基于事件的进行通讯;事件驱动模式是对SOA模式的一种补充。协同SOA平台将事件驱动的方法和面向服务的方法结合使用,以简化业务系统的集成;协同SOA平台是异类系统进行通讯的中介,部署到协同SOA平台上的服务可以由服务提供者或者事件触发。协同SOA平台同时支持同步方式和异步方式,可以使服务一对一和多对多通信。微内核、插件式plug-in的设计思想将组件完成的功能从协同SOA平台内核中剥离出来,组件功能和核心总线以松散耦合的方式结合,降低了内核的复杂度。而且集成项目中费用最高的部分就是对遗留系统的定制工作,协同SOA平台可以在总线上很容易开发、部署所需的插件,并对内核和其他插件的运行没有任何影响。多种传输方式协同SOA平台提供多种可靠的分布式通信模式,以保证异构系统之间大数据的以及频繁数据的传输。支持同步、异步模式,支持发布/订阅、点对点模式、支持断点续传。灵活的部署方式协同SOA平台既可以独立部署,也可以很容易的内嵌到各种应用系统中;与WebLogic、WebSphere、Jboss等应用服务器以及tomcat、jetty等web服务器无缝集成;支持Spirng框架,可以运行在EIS的服务端和客户端;SynchroESB可以运行在JavaSE或者JavaEE中。企业级QOS协同SOA平台通过建立PeerServer网络群,形成全局的服务仓库,通过路由策略的定制,将并发的请求分担群集中各节点的服务上,以达到负载均衡的能力;协同SOA平台网络中各节点可以配置master/slave关系,保证高性能、容错的服务能力;协同SOA平台网络中传输的信息可以持久保存在
本文标题:基于ESB的企业应用集成
链接地址:https://www.777doc.com/doc-4154628 .html