EAI神兵利器——几种主要集成方式(AMT宋亮 ) 企业应用网络应用中间件应用服务器电子商务
程序员文章站
2022-05-28 21:42:46
...
随着计算机软、硬件技术的发展,特别是Intranet和Internet的出现,计算机在企业的经营中起着越来越重要的作用。许多企业开始实施企业资源计划(ERP)、客户关系管理(CRM)、供应链管理(SCM)、产品数据管理(PDM)以及B2B电子商务等各种企业信息系统,极大地增强了企业的竞争力。但这些综合性的、分布式的且不断变化的系统跨越了从大型机到Web的多种平台,虽然从形式上看是一个个单独的系统,但本质上却需要它们相互联系,协同工作,因此不同系统的互连成了亟待解决的问题。企业应用集成 (EAI,Enterprise Application Integration)因此应运而生。
目前企业信息系统存在诸多问题。首先,就企业自行开发而言,企业的信息化大多是从单项业务系统开始的,不同系统的开发方式以及对于开发规范的遵从程度都有所不同,这使得系统间存在很强的孤立性,再加上对企业外部的信息未予足够的重视,致使各部门开发出的信息系统最终成为一个个“信息孤岛”,一个系统很难与其它系统交换信息。其次,大多数企业都有由过去遗留下来的异构的系统、应用、商务流程以及数据源构成的应用环境。应用环境的通信状况是混乱的,只有很少的接口文档,并且维护代价也非常的昂贵。而数字时代市场的合并又提出了一些附加的问题,即公司的联合和兼并能够指数级的增加系统综合的复杂性。再有,企业即使采用了ERP、SCM、PDM等现代管理系统,但这些系统常常来自不同的软件开发商、供应商。早期这些系统被设计成自包含的"黑盒"系统,只有很少或者根本没有方法来访问它内部的数据和商务流程。虽然现在许多这些应用都提供了更好的访问他们的内部数据和商业逻辑的方法,可是把这些系统和企业里的其他系统集成仍是一个巨大的挑战。
在企业内部,EAI通过建立底层结构来联系横贯整个企业的异构系统、应用、数据源等,完成在企业内部的ERP、CRM、SCM、数据库、数据仓库,以及其他重要的内部系统之间无缝地共享和交换数据的需要。而在电子商务时代,企业不仅需要在内部的应用系统之间进行集成,还需要对供应链中的不同企业系统进行集成,以帮助企业创建一条畅通于企业的各个部门、以及它的供应商、承运商、分销商、零售商和顾客之间的信息流,进行有效的数据和业务集成。EAI技术在今天被认为是企业获得成功的关键所在。
以下是几种主要的企业应用集成方式:
1.点对点(point-to-point)集成方法
传统点对点集成方法
这种集成的缺点是:集成虽然在一个整体的平台上,但是很多都不是开放及标准的环境,此类整合常伴随重复或技术难度较大的问题,导致整合的时间过长、成本过高,且不能适应变化的企业需求。
2.EAI中间件集成方法
EAI的集成建立在一个由中间件组成的底层基础平台上,各种“应用孤岛”、“信息孤岛”通过各种适配器连接到一个总线上,然后再通过一个Message Queuing实现各个应用之间的交流。各个EAI供应商几乎都会提供一些开发包,以便企业定义、升级适配器及定义管理流程。
主流的中间件集成方法
中间件具有以下的一些特点:满足大量应用的需要;运行于多种硬件和OS平台;支持分布式运算;提供跨网络、硬件和OS平台的透明性的应用或服务的交互功能;支持标准的协议;支持标准的接口。也正因为它的这些特点,中间件给企业带来的好处也就显而易见。首先,中间件产品对各种硬件平台、操作系统、网络数据库产品以及Client端实现了兼容和开放。其次,中间件保持了平台的透明性,使开发者不必考虑操作系统的问题。第三,中间件实现了对交易的一致性和完整性的保护,提高了系统的可靠性。第四,中间件产品可以缩短开发周期50%~75%,从而大大地降低了开发成本,提高了工作效率。
EAI的中间件解决方案主要有4个类型:
用户界面集成(界面重组)
界面重组是一个面向用户的整合,它将原先系统的终端窗口和PC的图形界面使用一个标准的界面(有代表性的例子是使用浏览器)来替换。一般的,应用程序终端窗口的功能可以一对一地映射到一个基于浏览器的图形用户界面。新的表示层需要与现存的遗留系统的商业逻辑或者一些封装的应用如ERP、CRM以及SCM等进行集成。
数据集成
数据集成发生在企业内的数据库和数据源级别。通过从一个数据源将数据移植到另外一个数据源来完成数据集成。数据集成是现有EAI解决方案中最普遍的一个形式。然而,数据集成的一个最大的问题是商业逻辑常常只存在于主系统中,无法在数据库层次去响应商业流程的处理,因此这限制了实时处理的能力。
商务流程集成
虽然数据集成已经证明是EAI的一个流行的形式,然而,从安全性、数据完整性、商务流程角度来看,数据集成仍然存在着很多问题。组织内大量的数据是被商业逻辑所访问和维持的。商业逻辑应用并加强了必须的商业规则、商务流程和安全性,而这些对于下层数据都是必需的。商务流程集成产生于跨越了多个应用的商务流程层。
函数/方法集成
函数和方法集成包括直接的和严格的,在网络环境中的跨平台应用程序之间的应用到应用(A2A)的集成。它涵盖了普通的代码(COBOL,C++,Java)撰写、应用程序接口(APIs)、远端过程调用(RPCs)、分布式中间件如TP监控、分布式对象、公共对象访问中介 (CORBA)、Java远端方法调用(RMI)、面向消息的中间件以及Web服务等等各种软件技术。面向函数和方法的集成一般来说是处于同步模式的,即基于客户(请求程序)和服务器(响应程序)之间的请求响应交互机制。
中间件技术也在不断发展,从原有的独立的消息中间件、交易中间件、对象中间件,发展到综合各类中间件技术的应用服务器。综合国内外的应用趋势,可以看到,用先进、成熟、可靠、可伸缩的应用服务器中间件搭建软件应用可以满足不断变化的业务需求。
3.其他方法
很多ERP和CRM厂商正在按照工业标准提供专有技术以方便应用集成,例如 J.D. Edwards, Oracle, PeopleSoft, SAP 和 Siebel Systems等供应商正在他们的产品套件里加进对新出现的标准技术的支持,包括用来交换XML数据的简单对象访问协议(Simple Object Access Protocol)、用来描述Web服务以及使用的WWeb服务描述语言(Web Services Description Language)以及用来从不同J2EE系统存储和获取数据的JCA(Java 2 Platform Enterprise Edition Connector Architecture)。除了专门的中间件供应商外,一些诸如webMethods, Tibco Software and Vitria 的ERP和CRM供应商在其产品套件中增加消息代理以处理异构系统的数据交换。这背后的原因是用户希望应用集成变得更容易,要求应用软件包的供应商遵从工业标准,从而使应用集成减少了对单个产品专有的应用编程接口(API)的依赖。
目前企业信息系统存在诸多问题。首先,就企业自行开发而言,企业的信息化大多是从单项业务系统开始的,不同系统的开发方式以及对于开发规范的遵从程度都有所不同,这使得系统间存在很强的孤立性,再加上对企业外部的信息未予足够的重视,致使各部门开发出的信息系统最终成为一个个“信息孤岛”,一个系统很难与其它系统交换信息。其次,大多数企业都有由过去遗留下来的异构的系统、应用、商务流程以及数据源构成的应用环境。应用环境的通信状况是混乱的,只有很少的接口文档,并且维护代价也非常的昂贵。而数字时代市场的合并又提出了一些附加的问题,即公司的联合和兼并能够指数级的增加系统综合的复杂性。再有,企业即使采用了ERP、SCM、PDM等现代管理系统,但这些系统常常来自不同的软件开发商、供应商。早期这些系统被设计成自包含的"黑盒"系统,只有很少或者根本没有方法来访问它内部的数据和商务流程。虽然现在许多这些应用都提供了更好的访问他们的内部数据和商业逻辑的方法,可是把这些系统和企业里的其他系统集成仍是一个巨大的挑战。
在企业内部,EAI通过建立底层结构来联系横贯整个企业的异构系统、应用、数据源等,完成在企业内部的ERP、CRM、SCM、数据库、数据仓库,以及其他重要的内部系统之间无缝地共享和交换数据的需要。而在电子商务时代,企业不仅需要在内部的应用系统之间进行集成,还需要对供应链中的不同企业系统进行集成,以帮助企业创建一条畅通于企业的各个部门、以及它的供应商、承运商、分销商、零售商和顾客之间的信息流,进行有效的数据和业务集成。EAI技术在今天被认为是企业获得成功的关键所在。
以下是几种主要的企业应用集成方式:
1.点对点(point-to-point)集成方法
传统点对点集成方法
这种集成的缺点是:集成虽然在一个整体的平台上,但是很多都不是开放及标准的环境,此类整合常伴随重复或技术难度较大的问题,导致整合的时间过长、成本过高,且不能适应变化的企业需求。
2.EAI中间件集成方法
EAI的集成建立在一个由中间件组成的底层基础平台上,各种“应用孤岛”、“信息孤岛”通过各种适配器连接到一个总线上,然后再通过一个Message Queuing实现各个应用之间的交流。各个EAI供应商几乎都会提供一些开发包,以便企业定义、升级适配器及定义管理流程。
主流的中间件集成方法
中间件具有以下的一些特点:满足大量应用的需要;运行于多种硬件和OS平台;支持分布式运算;提供跨网络、硬件和OS平台的透明性的应用或服务的交互功能;支持标准的协议;支持标准的接口。也正因为它的这些特点,中间件给企业带来的好处也就显而易见。首先,中间件产品对各种硬件平台、操作系统、网络数据库产品以及Client端实现了兼容和开放。其次,中间件保持了平台的透明性,使开发者不必考虑操作系统的问题。第三,中间件实现了对交易的一致性和完整性的保护,提高了系统的可靠性。第四,中间件产品可以缩短开发周期50%~75%,从而大大地降低了开发成本,提高了工作效率。
EAI的中间件解决方案主要有4个类型:
用户界面集成(界面重组)
界面重组是一个面向用户的整合,它将原先系统的终端窗口和PC的图形界面使用一个标准的界面(有代表性的例子是使用浏览器)来替换。一般的,应用程序终端窗口的功能可以一对一地映射到一个基于浏览器的图形用户界面。新的表示层需要与现存的遗留系统的商业逻辑或者一些封装的应用如ERP、CRM以及SCM等进行集成。
数据集成
数据集成发生在企业内的数据库和数据源级别。通过从一个数据源将数据移植到另外一个数据源来完成数据集成。数据集成是现有EAI解决方案中最普遍的一个形式。然而,数据集成的一个最大的问题是商业逻辑常常只存在于主系统中,无法在数据库层次去响应商业流程的处理,因此这限制了实时处理的能力。
商务流程集成
虽然数据集成已经证明是EAI的一个流行的形式,然而,从安全性、数据完整性、商务流程角度来看,数据集成仍然存在着很多问题。组织内大量的数据是被商业逻辑所访问和维持的。商业逻辑应用并加强了必须的商业规则、商务流程和安全性,而这些对于下层数据都是必需的。商务流程集成产生于跨越了多个应用的商务流程层。
函数/方法集成
函数和方法集成包括直接的和严格的,在网络环境中的跨平台应用程序之间的应用到应用(A2A)的集成。它涵盖了普通的代码(COBOL,C++,Java)撰写、应用程序接口(APIs)、远端过程调用(RPCs)、分布式中间件如TP监控、分布式对象、公共对象访问中介 (CORBA)、Java远端方法调用(RMI)、面向消息的中间件以及Web服务等等各种软件技术。面向函数和方法的集成一般来说是处于同步模式的,即基于客户(请求程序)和服务器(响应程序)之间的请求响应交互机制。
中间件技术也在不断发展,从原有的独立的消息中间件、交易中间件、对象中间件,发展到综合各类中间件技术的应用服务器。综合国内外的应用趋势,可以看到,用先进、成熟、可靠、可伸缩的应用服务器中间件搭建软件应用可以满足不断变化的业务需求。
3.其他方法
很多ERP和CRM厂商正在按照工业标准提供专有技术以方便应用集成,例如 J.D. Edwards, Oracle, PeopleSoft, SAP 和 Siebel Systems等供应商正在他们的产品套件里加进对新出现的标准技术的支持,包括用来交换XML数据的简单对象访问协议(Simple Object Access Protocol)、用来描述Web服务以及使用的WWeb服务描述语言(Web Services Description Language)以及用来从不同J2EE系统存储和获取数据的JCA(Java 2 Platform Enterprise Edition Connector Architecture)。除了专门的中间件供应商外,一些诸如webMethods, Tibco Software and Vitria 的ERP和CRM供应商在其产品套件中增加消息代理以处理异构系统的数据交换。这背后的原因是用户希望应用集成变得更容易,要求应用软件包的供应商遵从工业标准,从而使应用集成减少了对单个产品专有的应用编程接口(API)的依赖。