利用JMS和JCA实现应用之间的解偶
2008-01-05 10:31:49 来源:WEB开发网核心提示:传统的企业信息信息系统集成的方法是一种点到点的紧偶合集成,在这种集成方法中,利用JMS和JCA实现应用之间的解偶,每个系统都要知道与之相集成的系统的结构和它们之间的通信方式,并且一个系统的改变将影响其它的相关系统,业务过程的集成能够大大降低成本,并且提供柔性的业务过程流,假如一个系统被替换,则所有的集成接口也必须进行更
传统的企业信息信息系统集成的方法是一种点到点的紧偶合集成。在这种集成方法中,每个系统都要知道与之相集成的系统的结构和它们之间的通信方式,并且一个系统的改变将影响其它的相关系统,假如一个系统被替换,则所有的集成接口也必须进行更换。
更糟糕的是,由于企业业务逻辑分布在所有这些信息系统中,这种分散化的业务逻辑非常不便于治理和监督,也不便于对业务过程进行改进。因此企业需要集成业务过程和系统的企业应用集成架构能够实现业务逻辑与应用系统之间的解偶。
业务过程集成
业务过程通常是由事件驱动的,事件就是由用户行为、软件和时间等引起的一些活动。跨越多个异构的应用系统的业务过程的自动化通常叫做业务过程集成。
解偶应用
解偶应用作为业务过程集成战略的一部分,要求使不同的系统或者组件完全不必了解其他与之集成的系统或组件。解偶应用包括:
消除点到点的通信和消息传递;
对消息的数据结构的最少依靠;
集中化治理业务过程流;
发布/订阅方式的消息传递
J2EE应用服务器体系结构是一种基于事件的应用集成架构,在这种集成架构中,发布/订阅方式的消息传递是其中核心组件,它通过消除点到点的消息传递和通信方式提供了第一层的解偶。发布/订阅消息传递是一种异步的消息传递技术,使消息生产者和消费者相解偶,从而答应多到多的通信。这种解偶使消息的发布/订阅双方根本不用知道对方是谁。在java消息服务(JMS)中,不同的主题域、时间类型或其它相关意义的端点集合称做主题。主题除了不是点到点的之外,其他特性与队列的概念相似。企业集成架构可以根据事件类型设计不同的主题,这就意味着消息的发布方和订阅方可以不用了解其它组件而被加入。发布者和订阅者的减少也是透明的,这样的优点是提供给新的系统一个展示能力的机会,他可以与旧的系统并列运行,直到其能够完全代替旧的系统。
在发布/订阅方式的消息传递中,一个系统的故障也不会给其他系统带来太大的影响,因为持续的消息和持久的订阅者能够将消息进行排队指导故障系统恢复正常。
JMS使发布/订阅简单和标准化,JMS在基于J2EE 1.2规范的应用服务器中就已经存在,因此也不需要使用专用的消息传递系统接口。
适配器
适配器是一种可配置的组件,实现事件的格式和内容的转换和解偶应用。适配器提供了数据格式的封装功能,例如:假如一个系统提供了一个CSV(Comma Separate Value)文件,通过多个适配器可以将其转变成企业的xml标准的文件,然后进行发布。适配器进一步解偶了应用,使他们不依靠于特定的数据格式。
连接器
连接器特指基于Java 连接器架构(JCA:Java Connector Architecture)的源适配器,其在J2EE1.3规范中被定义。JCA为软件供给商定义了标准的能够与J2EE1.3应用服务器相集成的企业信息系统的标准API。JCA连接器提供了一个重要的能力,它使J2EE应用服务器能够集成任何使用JCA适配器的企业信息系统,大大简化了异构系统的集成。有了JCA,企业只要购买一个应用系统的基于JCA规范的适配器就可以将企业应用部署到J2EE服务器上,不用编写任何代码就可以实现与J2EE应用服务器的集成。
工作流
目前,对工作流有很多不同的名称,但是其基本的活动方式与一个状态机相同。系统设计者为业务过程配置不同的状态和他们的迁移条件,事件触发工作流从一个状态向另一个状态迁移,状态迁移本身是一个重要的业务过程事件。工作流提供了以下方面的优点:
集中了业务过程流和流事件,增加了对发布/订阅的影响;
在改变业务过程的定义时,减小了对现有系统的冲击;
使集成变成了对业务过程的定义,而不是系统之间数据的交换。
工作流现在还不是J2EE规范的一部分,实现工作流治理系统与J2EE服务器的集成只能使用专用的工作流治理软件。
结论
所有的系统都必须最后实现完全的集成,传统的战术上的集成方法最终导致花费大量的时间、金钱和系统缺乏柔性。使用业务过程治理架构解偶应用,同时集成业务过程是一个更好的解决方案。一个基于J2EE的集成架构能够集中化治理业务过程流和用JMS和JCA实现应用的解偶。通过解偶应用,业务过程的集成能够大大降低成本,并且提供柔性的业务过程流,提高企业的集成优势。
赞助商链接