集成技术的三个发展阶段
集成技术的发展已经有很多年了,大体经历了以下三个阶段:
点对点的集成。早期,由于需要集成的系统比较少,最常见的是两、三个系统之间进行数据交换。这时,企业普遍采用编程的方式来完成系统之间的数据交换任务。这种方式简单,但其最大的问题是缺乏灵活性,每两个系统之间需要进行互访时都要开发一段程序。两三个系统之间的互访尚可以应付,随着系统的增加,其复杂性和工作量成指数级增加。
EAI 这种方法是建立一个集中的数据交换平台(这个平台通常由中间件担当),同时在每个应用系统中安装一个名为Adapter(适配器)的插件。A
基于SOA(Service-OrientedArchitec-ture)的集成。SOA概念的普及给那些徘徊在应用集成大门之外的企业带来了新的希望。SOA通过建立一种统一的架构,使得软件开发人员能快速开发、集成和重用应用。更为重要的是,基于这种软件框架,系统能在业务发生变化之后,动态响应新的需求,快速重新装配各种软件构件和服务。今天基于SOA的集成方法正推动着市场的发展,BEA、IBM、Oracle等大多数供应商也开始转向SOA。
分布式SOA基础架构
尽管很多供应商提供了基于SOA的集成方法和产品,但最常见的还是基于集成平台的集成方法。这个平台类似于SOA集成服务器,它采用多种集成技术,为其他有需要的应用和服务提供可重用的业务服务。大多数厂商提供的这个平台以企业服务总线(EnterpriseServiceBus,ESB)的形式出现,当然也有一些厂商采用其他形式,比如围绕BPM进行业务流程集成。
“尽管与传统的集成方式相比,这种方式向SOA迈出了一大步,也解决了不少实际问题,但这种方式并没有真正体现SOA的分布式的优势。”SOA领域的专家、率先提出分布式SOA基础架构理念的IONA的CTOEricNewcomer说。
因为这里的集成本台大多数是从EAI产品演变而来的。它们的主要特征就是由消息总线提供数据格式转换和路由,完成流程自动化和应用适配器的功能。与EAI产品不同的只是,现在的集成服务平台支持服务集成。
这种总线式的架构本质上是集中式的SOA架构,它仍然带有传统的EAI产品的弱点。比如,集中式SOA架构会增加成本,限制资源的再利用,降低系统的灵活性,并且有可能形成成本高昂的系统瓶颈。最糟糕的结果是,它很有可能偏离技术中立的原则,把用户绑定在供应商的专有技术上,成为用户取消SOA计划的第一原因。如果SOA架构的灵活性不足以满足用户的各项需求,无疑会导致用户对SOA架构的彻底失望。
而SOA本质上应该是分布式,不应该存在有集中的控制点,任何应用只要符合相关规范都可以进入SOA网络进行交互(自然上述集中式的SOA架构也可以作为SOA的一部分)。
那么,分布式SOA架构如何来解决集成的问题呢?IONA提出的方法是对那些老系统进行SOA封装,即在每个应用上部署一个小的智能终端,由这个轻量型的插件来完成与SOA网络的通信,而网络中不再需要一个集中的控制平台。IONA的中国区总裁薛志勇认为,这种方式的最大优点是投资小、支持渐进式的部署、技术中立,也不存在瓶颈,更为重要的是,这种方式符合SOA的开放性、分布式的本质。