基于事件驱动SOA架构的企业应用集成模式研究

日期: 2009-08-02 来源:TechTarget中国 英文

  针对在当前企业应用整合中存在的集成平台缺乏灵活性和适应性、扩展性较差、互操作性不高等问题,本文提出了事件驱动的业务过程和服务驱动的松耦合动态集成相结合的EDSOA企业应用集成模式。该体系架构具有松耦合、行业支持和高度可集成能力等优势,可满足企业行业化、协同工作与动态电子商务以及实时企业与业务流程自动化的需要。也可以方便地实施EAI。

  随着信息技术的迅猛发展和社会生产力的不断进步,商务模式发生了根本性的变化,企业应用集成也面I|缶诸多方面的压力。目前。我国企业现有的各应用系统集成通常只关注某一个业务环节或整体集成和沟通程度不高,各应用系统相互独立地运行,在这些应用程序之间共享数据是很困难的。因此不可避免地形成一个个信息孤岛。而且,企业众多应用系统由于缺乏总体设计,产生了许多重复的功能模块,维护十分困难。然而,并不能一夜之间就将这些孤立程序全部放弃或替换。因为它们都是一些关键业务,而且在当前的商业环境下从零开始重新开发整个信息系统常常是不合算的。另外。企业需要不时地引进各种新的应用系统。而这些新方案往往基于最新的体系架构,它们与原有系统的体系架构有着很大的不同。

  为有效地解决这些问题,使企业IT系统具备扩展性强和随时支持业务流程变化的基础功能。成功实施企业应用集成、整合将是必要的措施。本文提出了事件驱动的业务过程和服务驱动的松耦合动态集成相结合的EDSOA企业应用集成参考模型。

  1 企业应用集成及应用架构介绍

  1.1企业应用集成简介

  企业应用集成(Enterprise Application Integration,EAI)的概念最初仅指企业内部不同应用系统之间的互连,以期通过应用整合实现数据在多个系统间的同步和共享。伴随着企业应用集成EAI技术的不断发展,它所被赋予的内涵变得越来越丰富。现在EAI的概念已经扩展到业务整合(Business Integration)的范畴,不仅要提供底层应用支撑系统间的互连,同时还要实现存在于企业内部应用与应用之间、本企业和其他合作伙伴间端到端的业务流程的管理,包括用户互动、应用整合、B2B整合、自动化业务流程管理、企业门户以及对所有应用系统和流程的管理监控等方方面面。

  1.2面向服务体系结构

  面向服务的体系结构(Service Oriented Architecture ,SOA)建立在分布式计算技术的基础上,可以基于现有的系统投资来发展,而不需要彻底重新创建系统。这种体系结构本质上是动态的。它提供对服务的登记、发现和调用的支持。SOA的软件开发人员可以将企业应用系统以服务的形式通过网络发布,即任何服务应用程序都可以同其他位置的基于服务的应用系统交互。并充分考虑服务的重用。

  1.3事件驱动体系架构

  事件驱动体系架构(Event-Driven Architecture,EDA)是一种设计和构建应用的方法,其中事件触发消息在独立的非耦合模块之间传递。事件源通常发送消息到中问件或消息代理,需要者可订阅这个消息。由于事件消息用发布/订阅方式通过消息代理传输,一个事件便可传送给多个需要者。EDA和SOA之间主要的区别是:在SOA中,发布者和需要者只有一对一的关系;而在EDA中,事件发布者最终可以传送消息给基于订阅规则的任何数量的消费者。也就是说信息在两个系统间交互时,根本不需要知道对方的详细信息。上述特点能很好地满足企业的应用需求,如跨部门的应急联动系统或联合监管协同服务等应用。

  2 基于事件驱动的SOA(EDSOA)企业应用集成模式架构

  2.1事件驱动型SOA

  所有业务都是事件驱动的,事件驱动型SOA为组织提供了响应这些实时业务动态所需的能力。它结合了面向服务的架构(SOA)的请求一响应模式和事件驱动架构的事件发布一提交模式。前者对服务事件的支持允许设计人员将应用程序设计映射到业务问题,后者通常由事件和请求/响应组成。服务和事件处理的结合产生了更好的敏捷性和快速的信息性响应。

  EDSOA的目标是对SOA进行扩展,从而使解决方案能够以极快的速度从海量数据流中迅速标识;有价值的事件。它把专门化实时系统的数据流管理和复杂事件处理的功能变为应用程序的一部分。用户和系统能够获得最高到微秒级的状态图,并且能够及时获知需要特别关注的一些改变。之所以有这样的优势,一方面,是因为SOA提供了一种集成框架,可将来自多个系统的数据集合在一起,并且当企业对请求进行响应时,SOA可以提供与某种系统的集成,从而为企业提供帮助;另一方面,不像SOA的请求/响应系统,要求请求者必须明确发送请求信息,而一个事件驱动架构提供一个机制去动态响应事件。在一个EDA系统里,事件产生者发布事件,事件消费者接受事件,所以EDA极大地改善了企业对各种看似无关的事件的响应能力。而这些事件往往会对企业造成影响。通过提供即时过滤、聚集和关联事件的功能,EDA能够以极快的速度检测有可能对企业造成威胁或为企业提供商业机遇的事件和模式。并且为企业提供对此做出即时反应的能力。企业通过使用全面的数据提要和确切的事件定义,能够快速做出反应并应对出现的挑战。

  2.2 EDSOA应用集成参考模式

  在企业应用集成领域。企业一直面临削减成本和最大限度地利用现有技术的难题。但与此同时。他们还必须不断地努力,以期更好地服务客户。更快地响应企业战略重点,从而赢得更大的竞争力。从信息的整合再到功能与流程的整合,从企业内部的应用整合到跨企业边界的整合,企业整合的需求不断变化和丰富。在当前激烈竞争的环境下,一个成功的企业在IT构建上需要解决下列问题:

  (1)如何实现应用系统的快速构建、迁移和伸缩,以满足不断变化的市场需求。

  (2)如何能够让已有的多种应用系统无缝集成起来。

  (3)如何设计现代IT架构,使系统不仅功能强大和可靠,而且还有强大的灵活性和可扩展性,以满足不断增长的新需求。

  通过对事件驱动SOA架构的分析可知。事件驱动SOA架构可以解决以上这些问题,基于此,本文提出了完整的基于事件驱动SOA架构的企业应用集成参考模式。

  整个体系结构中的服务由以下几层构成:①企业服务总线(Enterprise Service Bus,ESB),这是SOA体系中的基础架构,各个服务通过总线来互相访问;②应用服务层,这一层主要是指需要集成的企业各个应用系统和数据存储库;③ 总线接人层,这一层提供了适配器㈣服务。支持多种主流应用的接入协议,这样使用户可以访问各个应用服务,并通过消息机制使各种应用接人ESB。使用ESB 的各种服务;④核心服务层,提供多种企业服务总线所需的必要服务支持,在这一层提供总线基本服务,如消息分发,订阅、队列、目录服务以及数据转榭映射服务等;⑤业务支持层,这一层侧重在业务支持上,通过通用、标准的对象和服务模型,可以在这一层上定义可重用的和基于企业界标准的业务流程,同时,还提供统一的用户交互服务。包括手机银行、网上银行和传统银行网点。建立在企业服务总线之上的用户交互服务可以很小巧,并关注于各自交互的特点。

  该集成框架基于面向服务技术。通过各类适配器服务接口将企业应用封装成统一的应用服务,然后发布到目录服务中心,并通过企业服务总线中的基础核心服务。如统一数据格式和消息传递等,来实现各个应用系统间的通信交互。在该集成框架中,应用服务既可以是已有的旧应用。也可以是新开发的应用。该集成平台是连接各类应用的桥梁,采用的是松耦合方式,即任何应用都以独立服务的形式连接到系统中来,方式灵活,简单快速。真正实现了“即插即用”。

  当在该框架下需要进行过程集成和业务集成时。首先通过业务流程定义服务,并根据事件驱动的模型将已经注册的应用服务在一定的规则下组成相应的业务流程链。业务集成模型的实现是由集成引擎调用应用服务的接口实现数据的存取,并通过消息引擎在各个应用服务间传递路由数据。实现定义的业务流程。

  业务系统可以从SOA和EDA中受益匪浅,因为当事件发生时EDA能触发事件消费者,OA服务可以快速地从相同的消费者中访问、查询。系统需要快速的响应性,当事件触发时这个系统必须能快速决定必须的动作。到事件结束,事件应该被发布和消费,而且事件要穿越SOA所有的边界。包括整个体系结构和物理层。

  可以看出SOA完全可以提供一个灵活松耦合的可扩展的基础集成服务平台。比较完善地实现数据集成和应用集成。而且随着事件驱动架构的介入,可以顺利地实现企业业务流程的建模和集成,最终实现企业应用集成的最高层次,即过程集成。

  2.3 EDSOA模式在企业应用集成中的结合应用

  信息系统应用集成在近两年成为企业信息化建设的热点。应该说EAI建设是企业对其信息系统建没的一个总结。从EAI建设的驱动力来说,EAI是为了解决企业内的“蜘蛛网”、“信息孤岛”等问题而产生的。企业通过建设EAI系统。有效地降低了接口数量,并且在各个信息系统之间架起了沟通的桥梁。EAI为许多企业疏通了脉络,提高了信息系统的整合能力。

  由于企业行业化、协同工作与动态电子商务以及实时企业与业务流程自动化的需要等这些商业发展因素的驱动,企业应用集成越来越成为人们关注的焦点。事件驱动的SOA的好处是很明显的。通过实现具有实时反应能力的企业,事件驱动的SOA能够通过提高客户满意度、有效地管理意外事件和提高竞争的灵活性等措施增加企业的收入。通过提高价值链的可见性和减少获取客户的成本。事件驱动的SOA还能够降低运营成本。因此,通过更快的产品投放市场时间和更优越的技术支持和服务。企业的市场领先地位将得以提高等。

  事件驱动的SOA创建了把流程、方式和商业逻辑应用到原始数据中的基础。它把SOA请求/响应的范例与事件驱动的结构的发布/订阅模式结合在了一起。事件驱动的SOA还允许设计者描绘旨在解决商业问题的应用程序。这一般包括事件和请求/响应的互动。通过把面向服务和事件处理与商务流程管理、商务活动监视和企业服务总线等技术结合在一起,事件驱动的SOA创造了极大的灵活性。

  3 结束语

  基于事件驱动SOA架构的企业应用集成体系结构将减少集成那砦完全不同系统所需的时间。并通过快速开发和组件重用来快速部署服务。从高度集成环境中的多个事件源捕获、关联和汇集事件的能力可确保企业对变化的业务情况进行预测并快速作出响应。相信新技术与新业务流程的相互融合。将为我国企业在管理与业务模式上的创新提供机遇,也会为“实时企业”的理念、管理模式、相关技术以及相应的支撑管理软件在我国企业的,世用实践提供良好的基础。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

相关推荐

  • 总线技术究竟该不该用?

    曾几何时企业服务总线(ESB)被视为企业IT的核心。今天,不仅ESB受到了比被废弃还要糟糕的攻击,若干开发趋势似乎对更简单的消息总线也发起了质疑。

  • 企业应用集成的关键产品之工作流

    企业在努力实现业务敏捷、推动朝着对工人的个性化支持以及集成业务流程的组合发展。应用集成项目必须权衡这些要素。

  • 集成服务创造新应用

    企业架构师开始重视流水线化集成架构,这样有助于降低IT开发成本并且充分利用云基础框架。

  • 从ESB到微服务:如何演变?

    从web开发人员的角度看,大量的微服务部署到轻量级的Karaf 容器中,这就符合了ESB的定义。