一种基于TAO和ACE的企业应用集成架构
- 格式:pdf
- 大小:150.11 KB
- 文档页数:3
CSP轧机二级程序间的CORBA通讯王博(安徽省马钢第一钢轧总厂)The CORBA communication among CSP level2 programsWangbo(The No1 Steel Plant of Maanshan iron in Anhui province)摘要:本文简要介绍了轧机二级程序的逻辑结构,以及程序之间使用基于CORBA服务的通讯过程。
使用基于CORBA对象服务的通讯程序比一般的套接字网络程序性能更可靠,软件重用性较强,开发起来也较简单。
关键词:CORBA,对象服务,司服,通讯ABSTRACT: The programs in the process computer for the finishing mill and the cooling section are based on CORBA. Using CORBA the L2 processes can execute steadily and easy to migrateto other systems. Compared to the traditional Socket programs, CORBA based programs are simple to write.Key Word: CORBA, object-oriented service, servant, communication1 概述由于面向对象的设计模式和框架能够帮助减轻昂贵的分布式软件概念和抽象核心的重新生成,被人们所看好。
基于对象服务的CORBA专属中间件已经被越来越多地用于程序的通讯当中。
CORBA(Common Object Request Broker Architecture),即公共对象请求代理结构,是由OMG小组编写和维护的开放式中间件,为C/S结构程序的通讯提供中间支持。
CORBA 提供一种规范的描述接口的语言——IDL,并且通过IDL编译器分别生成客户端和服务器端的抽象类代码,进而派生实现成对象。
论企业集成架构设计及应用第一章项目摘要2023年,我参与了某公司线上电子商务平台的研发项目,担任系统架构设计师的角色。
该项目旨在构建一个功能全面、性能优异的电子商务平台,以支持公司业务的快速增长,并解决信息孤岛问题,实现企业内部及企业间的信息高效交换与业务协同。
在平台架构设计中,我采用了企业集成架构技术(Enterprise Integration Architecture,EIA),通过这一技术,我们实现了企业信息、业务过程、以及应用系统的全面集成。
在项目中,我主要负责系统的整体架构设计,包括数据集成、应用集成和企业集成的方案设计与实施。
通过采用数据联邦、数据复制以及基于接口的数据集成技术,我们解决了不同系统和应用间的数据共享和交换需求,实现了数据的整合、同步和共享。
在应用集成方面,我们运用了适配器集成模式、信使集成模式、面板集成模式以及代理集成模式,实现了异构应用系统之间的无缝连接和数据交换,提升了业务流程的自动化水平。
最后,在企业集成层面,我们结合了前端集成模式、后端集成模式以及混合集成模式,构建了统一的企业信息平台,全面提升了企业的运营效率和竞争力。
本文将以该项目为例,详细探讨企业集成架构设计技术及其在电子商务平台中的应用与实现效果。
通过我的设计和团队的努力,项目于2023年底成功上线,并取得了显著成效,不仅提升了公司内部各部门之间的协作效率,还增强了与外部合作伙伴的业务协同能力,得到了公司领导层及业务部门的高度评价。
第二章项目背景近年来,随着电子商务的快速发展,企业对信息化建设的需求日益迫切。
然而,许多企业在信息化建设过程中面临着信息孤岛的问题,不同系统和应用之间的数据无法有效共享和交换,严重影响了企业的运营效率和竞争力。
为了解决这一问题,企业集成架构技术应运而生,并成为解决信息孤岛问题的关键。
本项目旨在构建一个功能全面、性能优异的线上电子商务平台,以支持公司业务的快速增长,并实现企业内部及企业间的信息高效交换与业务协同。
CORBA Programming with TAO - 1.Start(基本概念)摘要:简要介绍CORBA的基本原理,并解释POA、stub、skeleton、servant等重要概念。
一、CORBA及TAO简介CORBA是一个为简化跨平台应用而提出的规范,它独立于网络协议、编程语言和软硬件平台,支持异构的分布式计算环境和不同编程语言间的对象重用。
CORBA可以作为不同平台应用间信息传递的中间件,CORBA通过引入经过充分验证的有效的框架结构和通信手段,最大限度地简化了网络通信相关应用的设计与开发,使得我们可以专注于业务逻辑的实现,而无需关心通信的细节。
CORBA曾在无数文章中被称作“软总线”,以表明它作为数据传递通道的基本特性。
现在存在众多CORBA实现,既有商用的ORBacus、VisiBroker,也有一些优秀的开源实现,如:TAO、omniORB、MICO等。
由于各实现遵从相同的规范,接口基本一致,所以在熟练应用一种CORBA实现后,转而使用其它实现时,一般不会存在太大的障碍。
TAO(The ACE ORB)是美国华盛顿大学的Douglas C. Schmidt教授领导开发的一个实时CORBA平台,它是一个免费的开放源码项目,用C++语言开发,符合CORBA2.6规范。
支持语言: C++支持平台: Win32,常见的各种Unix/Linux,实时操作系统如VxWorks等等。
在所有的CORBA实现中,TAO 支持的平台是最多的。
支持的服务: Naming、Event、Notification、Security、Time、Scheduling、Logging、Lifecycle、Trading、Concurrency、Lifecycle、A/V Streaming、Load balancing等。
本系列文章将以当前最新的ACE-5.5+TAO-1.5+CIAO0.5为例,简要介绍如何应用TAO进行CORBA C++编程,其中部分内容(尤其是编译器配置相关的内容)是Windows平台特有的,但其它大多数信息在各平台上都是相同或者类似的。
ACE 是一种免费开放原代码的面向对象框架结构,该结构实现了许多并行通信软件的核心设计模式。
ACE 提供丰富的C++ 包装接口, 以及可跨平台执行通信软件的基本任务的框架对象。
ACE 提供的基本任务包括事件分离与事件处理的分发、信号量处理、服务初始化、进程间通信、共享内存管理、消息路由、分布式服务的动态配置、并发执行与同步。
TAO 是使用ACE 中提供的框架结构对象与模式实现的针对高效与实时系统的CORBA 应用。
TAO 中包含了网络接口、操作系统、通信协议以及CORBA 中间件对象与相关特性。
网上获取ACE/TAO 的免费软件包,将其解压到目录下,则在该目录下会自动生成一个ACE_wrappers 目录。
在Win32+VC6.0 下编译和安装ACE/TAO 的步骤为:(1)新建两个环境变量:ACE_ROOT=ACE_wrappers 所在目录;TAO_ROOT=ACE_wrappers\tao。
(2)在ACE_ROOT\ace 目录下建立一个空文件config.h,里面包含一句:#include ace/config-win32.h,用于说明是要在win32 平台下进行编译。
(3)如果是98/ME,则在ACE_ROOT\ace\config.h 的最前面加上#define ACE_HAS_WINNT4 0,用于关掉一些NT/2000 中特有的代码。
(4)如果用MSVC 的STL 库(如iostream, cstdio 等), 则在config.h 文件中的#include 语句前添加下面的行: #define ACE_HAS_STANDARD_CPP_LIBRARY 1(5)如果在ACE 中要使用MFC 的库,则需要在config.h 中添加:#define ACE_HAS_MFC 1默认情况下,所有的ACE 工程使用的是MSVC 的DLL 文件作为运行时库。
可选择使用ACE 的静态库文件(LIB),而不需考虑这些运行时库(Runtime Library)。
企业级应用集成现代企业在日常运营中通常需要使用多个不同的业务应用程序来实现不同的功能,比如CRM系统、ERP系统、人力资源管理系统等。
这些不同的应用程序通常都有自己独立的数据存储和操作接口,这样就导致了数据在系统之间的孤立和信息交流的不便。
为了解决这个问题,企业级应用集成(Enterprise Application Integration,EAI)应运而生。
企业级应用集成是将不同的应用程序进行连接、交互和数据共享的过程,使得各个系统可以无缝地协同工作。
通过实现应用集成,企业可以实现数据的一致性、系统的互操作性和复杂业务流程的自动化,从而提高工作效率和决策能力。
企业级应用集成通常分为以下几种模式:1. 点对点集成模式:这种模式是最简单和直接的集成方式,通过直接建立两个应用程序之间的连接,实现数据的传递和交互。
这种模式适用于只有少量应用程序需要进行集成的情况,但是会导致大量的点对点连接,使得系统更难以维护和扩展。
2. Hub-and-Spoke集成模式:这种模式引入了一个中央集线器(Hub)来协调各个应用程序之间的交互。
每个应用程序只需要与集线器进行连接,而不是直接与其他应用程序连接,集线器处理所有的数据转换和路由工作。
这种模式可以降低集成的复杂性,并提高系统的可扩展性。
3. 企业服务总线(Enterprise Service Bus,ESB)模式:ESB是一种架构模式,通过引入一个中间层来实现不同应用程序之间的集成。
每个应用程序将其功能封装为可重用的服务,并通过ESB进行发布、订阅和调用。
ESB可以实现基于消息的异步通信,支持复杂的消息路由和转换,以及安全和事务管理等功能。
4. 服务导向架构(Service-Oriented Architecture,SOA)模式:SOA 是一种更加细粒度的集成方式,将企业的功能划分为可独立部署和使用的服务。
这些服务通过标准化的接口和协议进行通信,可以在不同的应用程序之间共享和重用。
企业应用系统集成平台应用系统集成平台是一个将多个应用系统连接在一起,实现数据共享、流程整合和业务协同的平台。
随着企业业务的不断扩展和复杂化,应用系统数量不断增加,系统间的数据交互和业务流程的整合需求也越来越迫切。
应用系统集成平台可以提高企业的业务效率和数据准确性,降低IT成本和风险。
一、应用系统集成平台的概述应用系统集成平台是一种基于中间件技术的综合性平台,它将各种应用系统、数据源、业务流程等集成到一个统一的平台上,实现数据共享、流程整合和业务协同。
该平台采用标准化的接口和协议,支持多种异构系统的集成,具有高度的可扩展性和可定制性。
应用系统集成平台的目标是消除信息孤岛,提高企业业务效率和灵活性,支持企业创新和发展。
二、应用系统集成平台的功能1.数据集成:将不同来源的数据进行整合,实现数据的共享和交换。
支持多种数据传输协议和数据格式转换,保证数据的准确性和一致性。
2.流程集成:将不同系统的业务流程进行整合,实现业务流程的自动化和协同。
支持多种流程引擎和规则引擎,满足复杂业务流程的需求。
3.应用集成:将不同系统的应用进行集成,实现应用的互操作和协同。
支持多种应用接口和适配器,满足不同应用系统的连接需求。
4.统一管理:提供统一的管理界面和应用系统监控功能,方便管理员对平台进行管理和维护。
支持可视化的配置和部署,提高工作效率。
5.安全保障:提供完善的安全保障机制,保证数据的安全性和完整性。
支持身份认证、访问控制和加密传输等功能。
三、应用系统集成平台的建设建设应用系统集成平台需要遵循以下步骤:1.需求分析:对企业的业务需求进行深入分析,明确平台需要集成的应用系统、数据源、业务流程等,以及平台需要提供的功能和服务。
2.技术选型:根据需求分析结果,选择合适的技术和工具,包括中间件技术、接口协议、数据传输格式等。
同时需要考虑技术的成熟度、可扩展性和可维护性等因素。
3.系统设计:根据需求分析和技术选型结果,设计平台的整体架构、模块划分、接口规范等。
企业级应用集成实战案例分享近年来,随着信息技术的不断发展和企业规模的扩大,企业级应用集成变得越来越重要。
不同部门和业务系统之间的数据共享和互操作性成为了提高企业运营效率和决策能力的关键。
本文将分享一个企业级应用集成实战案例,介绍如何利用现有技术和工具实现系统间的无缝集成,以及在实施过程中所遇到的挑战和解决方案。
1. 案例背景本次案例的主要对象是一家跨国制造企业,该企业拥有众多的生产工厂和销售渠道,每个工厂和渠道都有各自独立的信息系统。
然而,由于系统孤立和数据碎片化,企业高层无法及时获得全面准确的数据,从而导致了决策上的盲点和运营效率的低下。
因此,该企业决定实施企业级应用集成,以实现不同系统之间的数据共享和协同工作。
2. 方案设计为了解决数据孤立和碎片化的问题,我们设计了一个综合的应用集成方案。
首先,我们选择了传统的企业服务总线(ESB)作为集成平台,它能够在系统间传递数据和消息,并提供了丰富的数据转换和路由功能。
其次,我们采用了企业应用集成(EAI)工具,用于系统间的数据映射和转换。
同时,我们还引入了开放式APIs来支持与第三方系统的集成,以满足企业未来的扩展需求。
3. 集成实施在实施过程中,我们首先进行了现有系统的评估和分析,了解每个系统的数据结构和交互逻辑。
然后,我们通过ESB和EAI工具,建立了系统间的数据通道。
通过定义数据映射和转换规则,我们能够实现不同系统之间的数据互传,并确保数据的一致性和准确性。
最后,我们针对APIs的集成进行了开发工作,以支持与外部合作伙伴和供应商的数据共享。
4. 挑战与解决方案在实施过程中,我们遇到了一些挑战。
首先,不同系统的数据结构和交互逻辑存在差异,这给数据映射和转换带来了困难。
我们通过与系统管理员和业务人员的密切合作,收集了系统详细信息,并进行了多轮的测试和调试,最终解决了数据一致性和准确性问题。
其次,外部APIs的集成需要与第三方合作伙伴进行协商和开发,这需要大量的沟通和时间投入。
企业应用集成的总体架构与方案设计随着市场的不断扩大和企业的不断发展,企业内部的数据和应用也越来越分散和复杂。
这使得企业要想在竞争激烈的市场中获得优势,就必须要实现应用之间无缝连接的目标。
因此,企业应用集成变得越来越重要。
本文将介绍企业应用集成的总体架构和方案设计。
一、企业应用集成的基本概念企业应用集成(Enterprise Application Integration,EAI)是指将企业内部的各种应用系统进行有机整合,使其能够沟通交流,达到信息共享、资源共享、业务流程协同等目的。
企业对于集成的需求不是单纯地将某一个特定的应用系统与另一个应用系统连接,而是整个企业应用系统的互相连接,包括业务过程、数据流、消息流等。
在企业应用集成中,需要处理的问题很复杂,最基本的问题是如何让各个应用系统进行通信。
每个应用系统都有自己的数据结构、交互规则、通信协议等,这些都需要在集成中进行考虑。
此外,还需要考虑数据格式转换、数据传输安全和数据合法性等问题。
二、企业应用集成的总体架构企业应用集成的总体架构为一个多层次结构,其中每一层都有不同的角色和功能。
下面是企业应用集成系统的六层结构:1. 系统集成架构层:主要负责整个集成系统的架构设计和建设,包括应用程序接入、数据传输协议、数据校验、数据格式转换等功能。
2. 应用集成层:主要负责向外提供设备与应用程序的连接,以及提供标准接口和协议(如 JMS、HTTP)。
3. 业务规则层:这一层主要负责处理业务流程和业务规则,实现应用之间的数据交换和业务逻辑执行。
4. 中间件层:这一层是数据传输的关键,主要负责处理数据交换流程中的错误处理和异常情况,还有数据安全保障。
5. 数据存储层:数据可以存储在本地或者远程服务器上,主要用于存储不同应用之间共享的数据,以达到数据的共享与互通。
6. 应用管理层:最后一层是系统的监控和管理层,负责管理整个系统,处理集成应用程序的配置和维护工作,提供系统监控和调节能力。
企业级应用集成平台搭建原则随着企业信息化建设步伐的不断加快,众多企业开始关注企业级应用集成平台的搭建问题。
作为现代企业信息系统架构的重要组成部分,企业级应用集成平台能够将企业不同的业务系统、产品等进行整合,从而提升企业的业务流程效率,降低企业维护成本,实现企业的创新和转型升级。
因此,企业级应用集成平台的搭建越来越受到企业的重视。
本文将从企业级应用集成平台的功能、选用原则和搭建流程等方面,给出相关指导。
一、企业级应用集成平台的功能企业级应用集成平台是指在企业不同的信息系统之间架设的一个统一的交流平台,它可以自动化地支持跨系统的应用集成,使得企业的不同信息系统之间能够实现数据的共享、流程的整合和应用的交互。
企业级应用集成平台通常包含以下主要功能:1. 集成引擎:完成对多个不同应用系统的连接,将不同的数据进行整合和转换,实现数据的转发和交互。
2. 流程引擎:支持企业的复杂业务流程,将不同业务系统之间的关联流程无缝地连接起来,并管理整个流程的执行。
3. 监控管理:对整个应用集成平台及各个系统的运行情况实现实时监控,提供精确的系统报警和故障处理。
4. 安全管理:提供统一的安全管理平台,管理企业的所有信息安全问题,包括权限管理、用户认证、数据传输加密等。
5. 数据治理:实现数据质量管理,包括数据清理、数据转换和数据格式化等。
二、企业级应用集成平台的选用原则企业在选择企业级应用集成平台时,需要从以下几方面进行考虑。
1. 兼容性:企业应该选择一个可以兼容不同操作系统和不同平台的应用集成平台。
这些系统包括ERP、CRM等系统,可以支持不同的业务领域。
2. 可扩展:企业应该选择一个可以轻松扩展的应用集成平台,能够随着需求的变化而灵活地进行调整。
3. 可定制:企业在选择应用集成平台时,应该选择一个能够根据企业的需要进行定制的平台,可以实现更加精细化的操作和流程。
4. 易用性:企业应该选择一个易于使用的集成平台,没有太多的代码编写工作,让系统管理员可以直接进行控制和监控。
—92—一种基于TAO 和ACE 的企业应用集成架构王名茗,王卫平(中国科学技术大学信息管理与决策科学系,合肥 230026)摘 要:EAI 中对关键业务的处理提出了较高的性能与健壮性要求,传统的做法难于满足这种变化。
TAO 是一种C++ ORB ,它兼容大部分CORBA 标准,具有性能高、互作性强、健壮性好等特点,已在商业化项目中有广泛的应用;ACE 是一个高性能的面向对象的工具开发包,它简化了面向对象的网络应用和服务的开发,可以与TAO 做到无缝的结合。
该文基于TAO 与ACE 的特点,提出了一种以TAO 和ACE 为核心的EAI 架构,并分析该架构各个环节的关键技术实现。
关键词:TAO ;CORBA ;自适配通信环境;企业应用集成An EAI Architecture Based on TAO and ACEWANG Mingming , WANG Weiping(Dept. of Information Management & Decision Science, University of Science and Technology of China, Hefei 230026)【Abstract 】In EAI,some critical business operations require high performance and robust stability, but the traditional solutions could hardly satisfy these needs. TAO is a kind of C++ ORB ,based on the CORBA specification. Because of the high performance, good interoperability, and stronger stability, etc, TAO is widely applied in business projects. ACE is a high performance object-oriented developing toolkit package, it makes the developing of object-oriented network application and service easily, and it can work with TAO seamlessly.This paper proposes an EAI architecture based on TAO and ACE,and discusses the key technologies implementation. 【Key words 】TAO ;CORBA ;Adaptive communication environment (ACE);EAI计 算 机 工 程Computer Engineering 第31卷 第16期Vol.31 № 16 2005年8月August 2005·软件技术与数据库·文章编号:1000—3428(2005)16—0092—03文献标识码:A中图分类号:TP311随着市场竞争的日益激烈与客户需求的不断改变,企业要求改变传统的面向功能的组织结构,转向以业务过程为中心的模式。
业务过程不仅会跨越一个企业的多个职能部门,还会涉及其他的企业。
企业的这种转变必然要求企业信息流的处理要做出相应的改变。
这就导致了企业应用集成 (EAI)的出现。
从商业角度看,EAI 指的是一个企业将应用集成到一个统一的信息系统中,实现数据共享并能够对业务流程提供支持;从技术角度看,EAI 指的是将不同的应用程序和数据集成在一起的过程,从而在不对已有的应用程序作出过多修改的情况下,实现数据共享和业务流程的集成。
通常,在应用集成中包括如下的重要过程:平台(硬件)集成,数据级集成,应用接口集成,业务方法集成,表示层集成,B2B 集成。
本文主要关注应用接口集成与业务方法集成阶段。
应用接口集成阶段主要解决关联到现有应用的功能性复用的技术方面的问题,通常通过使用现有应用程序所列的、或者是后来加上的API 来完成。
业务方法集成阶段是在应用接口集成的基础上开发高层业务接口,也就是业务服务,它基于新的集成体系结构,提出了带有明确需求的集成信息系统。
对于这两个阶段的集成,目前已经出现了一些解决方案与技术,如:用于与外部系统通信的IIOP 、SOAP 、RPC ,用于消息传递的JMS ,用于封装应用接口的RMI-IIOP 、JCA 、COABA ,用于开发高层业务组件的EJB 、CORBA 等。
这些方案与技术主要是基于Java 平台的,被实践证明是解决了很多的应用集成问题。
但是,随着企业业务的发展,EAI 中对一些关键业务的处理提出了较高的性能与健壮性要求,如电信服务提供商要求它的集成系统每秒能处理几百条异步消息,这时传统的做法难于满足这种变化。
TAO 是一种基于C++的ORB ,它兼容大部分CORBA 标准,具有良好的性能、强大的互操作性、健壮性等特点,已被很多公司采用并在商业化项目中有广泛的应用;ACE 是一个高性能的面向对象的工具开发包,它对面向对象的网络应用和服务的开发做了极大的简化,并且可以与TAO 做到无缝的结合。
本文基于ACE 与TAO 的特点,提出了一种以TAO 和ACE 为核心的EAI 架构1 ACE 和TAO 的特点与集成特征自适配通信环境(Adaptive Communication Environment , ACE )是由许多面向对象组件组成的工具包,它成功地吸收了设计模式和软件体系结构的优点,降低了分布式软件的复杂性。
ACE 将通用的与通信相关的功能统一到可复用的面向对象组件和构架中,它提供了一组丰富的可复用的组件,可跨越多种平台完成通用的通信任务。
其中包括:事件多路分离和事件处理器分派,信号处理,服务初始化,进程间通信,共享内存管理,消息路由,分布式服务动态配置,并发执行和同步等。
在与外部系统的交互问题上,ACE 提供了接收器(Acceptor)、连接器(Connector) 、反应堆(Reactor) 、服务处理器(ACE_Svc_Handler )等组件模式,可以高效地处理与外部系统的交互。
本文所讨论的EAI 架构中,ACE 组件充当了联结外部系统与集成系统高层业务组件的通信中介与调解。
TAO(ACE ORB)是一个基于CORBA 标准的中间件平台。
CORBA 是由对象管理组(OMG)负责开发与维护,被认为是最重要的分布对象的体系结构。
由于TAO 它兼容大部分作者简介:王名茗(1980—) ,男,硕士生,研究方向:企业分布计算,网络安全;王卫平,副教授定稿日期:2004-07-11 E-mail :mimigama@—93—CORBA 标准,它可以实现远程对象调用,而不用关心如何去做对象定位,同时,它可以实现TAO 的应用的跨平台、跨编程语言以及跨硬件平台和通信协议的特性。
TAO 成功地把ACE 应用到ORB(Object Request Broker)的开发中,一些在ACE 开发过程中成功的经验和设计模式被应用在TAO 的开发中,使得TAO 成为一个高性能、实时的服务质量的分布式应用平台。
在本文所讨论的EAI 架构中,TAO 构成了集成平台的主要部分,主要用于开发封装应用接口的低层CORBA 组件与高层业务接口的CORBA 组件。
高层业务CORBA 组件负责接收客户端的调用请求,并把它分解与映射到低层CORBA 组件;而低层CORBA 组件负责与ACE 通信层交互,通过ACE 层适配以达到与外部系统的交互。
2 基于ACE 和TAO 的EAI 构架设计根据上面的讨论,ACE 与TAO 具有良好的集成性质,并且能高效无缝地结合在一起,是高性能集成平台的良好选择。
本文基于ACE 与TAO 的特点,根据以中间件为基础框架的多层体系结构原理,提出了一种以TAO 和ACE 为核心的EAI 架构。
该构架如图1所示。
整个构架划分为4个层:外部系统层,ACE 通信层,业务逻辑层,表示层。
图1 基于ACE 和TAO 的EAI 架构2.1 外部系统层外部系统层是企业现有的企业信息系统,主要是为孤立的职能部门或专门的问题所给出的解决方案,这些孤立的信息系统在各自的领域内都能成功地运作。
但是体系结构的设计并没有把它当作是整个企业信息系统的一部分,这导致了这些信息系统间的协同工作能力十分有限。
现代企业的业务过程运作越来越需要信息系统能支持完整的业务过程。
这对应用开发提出了新的挑战。
因为现有的孤立信息系统都在处理一些关键任务,企业不能一夜之间就将这些孤立的系统放弃或替换,而且在当前的商业环境下从零开始重新开发企业的整个信息系统通常是不合算的,所以选择了集成现有的信息系统。
要集成这些系统,关键的问题是如何与他们交互。
由于现有的系统可能是由不同的语言开发,运行在不同的平台上,使用了不同的数据库,有的提供API 有的不提供,这使得集成这些信息系统变得极为复杂。
具体的情况有具体的处理方法,我们这里只讨论更高抽象层次上的ACE 通信。
2.2 ACE 通信层ACE 通信层介于业务逻辑层与外部系统层之间,起着调解、适配与中介作用。
ACE 通信层屏蔽了业务逻辑层的通信命令与格式的差异,并且屏蔽了与外部系统通信的协议差异,提供各种构架支持,可方便后续需求的扩展。
ACE 通信层首先接收业务逻辑层的调用请求,解析请求命令并把请求命令适配成一定的格式,由具体服务处理器通过具体连接器传递给外部系统;同时,使用接收器,接收外部系统返回的结果,解析返回的结果并适配成一定的格式向业务逻辑层发送。
该层设计如图2所示。
图2 ACE 通信层设计ACE 开发包封装了底层的通信机制,提供了优秀的通信组件模型。
本架构的ACE 通信层主要利用了反应堆模式、接收器-连接器模式、消息队列模式、服务处理器。
ACE 通信层使用接收器-连接器与外部系统互联。
连接器主动地建立到外部系统的连接,并初始化服务处理器来处理在连接上交换的数据。
同样地,接收器被动地等待来自外部系统的连接请求,在这样的请求到达时建立连接,并初始化服务处理器来处理在连接上交换的数据。
随后已初始化的服务处理器执行应用特有的处理,并通过连接器和接收器组件建立的连接来进行通信。
ACE 通信层的适配、解析功能由服务处理器来完成,服务处理器继承了ACE_Svc_Handler 类,它既是任务又是事件处理器。
反应堆提供面向对象多路分离和分派构架,是一个事件分派类;而在上述构架情况,它被接收器用于将连接建立事件分派到适当的服务处理器。