第3章 基本组成模块.pdf
《第3章 基本组成模块.pdf》由会员分享,可在线阅读,更多相关《第3章 基本组成模块.pdf(23页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、基本组成模块要点:建立E A I结构所需的四个基本模块:通信模式、集成方法、中间件以及服务。企业应先确定要求,然后对四个模块选择满足需求的产品,从而建立 E A I结构。通信模式有两种:同步传输和异步传输,有效的 E A I结构会两者都包括。接口和消息是集成的两个方法。消息在数据一致性和多步处理时最有用。接口在解决组件集成时最有用。不是所有的中间件都是E A I结构核心。MOM和D O T是两种最流行的核心中间件模块。是否需要T P M由企业的业务类型决定。服务增加了中间件和通信的功能,令它们更易于使用,也更有效。第 3 章在企业中实现 E A I既需要技术,也需要方法。方法包括各种定义、过程
2、和指南,这些因素综合在一起就构成了系统框架,让设计者、开发者能在这个框架上有效、可预测地开发出方案。技术则实现方案。在方案的开发过程中,方法和技术有着相互影响、相互作用的关系。方法提供能用现有技术实现的方案,多种技术可用来集成应用软件。EAI 体系结构是以结构化方式集成的技术,它基于四个最基本的技术模块。它们分别是:通信模式 集成方法 中间件 服务这四个模块必须在一个体系结构中互相连结。用方法来帮助建立方案、确定何种结构对手边的问题最有用。本章将具体讨论以上每种模块。企业需要选择能实现一个或多个模块的产品,然后将它们组合成统一的整体,以此建立物理上的E A I结构。产品的选择应该基于具体产品所
3、能实现模块的特性和功能。在选择产品时,企业还应考虑到如何将一系列产品安装成统一结构。E A I结构的区别就在于各模块特性、功能的宽度不同。本章也将详细讨论各种模块。3.1 通信模式系统互相作用的方式决定其灵活性。通信模式有两种基本形式:同步通信和异步通信。一般情况下,同步通信中,请求发送器需要一直等待,直到收到应答才进行下一次发送,这是因为需要应答结果来继续执行。46部分第3章异步通信允许发送器发出请求后继续执行,可能并不需要接收器为请求作应答。请求(r e q u e s t)这个概念将贯穿于本章内容之中,是指发送器与接收器之间的通信。事实上,这种通信可能不是请求,而是信息传递,不过,为了保
4、持一致统称为请求。接收器接收器是接收发送器所发的请求的软件,它可能会向发送器发回一个请求应答。请求请求是由一组格式化的操作和数据构成,从软件的发送方到接收方。应答应答也是一组格式化的数据,也可能是相关的操作,作为请求的回应。发送器发送器是向另一软件组件发送请求的软件。同步通信和异步通信广泛地应用于各种场合。事实上,特定开发商能将同步通信强行异步传输,反之亦然。当然,人们并不希望出现这种情况,这个话题已经被争论了很多年。在任何企业里,开发商都应该两者皆备,然后因时制宜。3.1.1 同步通信在通信连接中,同步通信需要一个发送器和一个接收器来协同内部处理过程,这种协同表明同步通信要求高度耦合,具体规
5、则由使用的同步通信类型决定。47基本组成模块同步通信同步通信中,通信由发送器和接收器协同完成,使发送器和接收器的操作都依赖于请求过程。如果发送器需要接收器发回应答结果和确认接收,则尽量使用同步通信。交互系统有以下情形:用户希望能即时看到信息以便及时操作,或者双方应用软件必须同时进行才能完成交易。例如,连接数据库的网站、与中央处理器应用软件交互的 J a v a应用软件、与类似于SAP R/3的E R P软件包交互的Wi n d o w s应用软件。同步通信要求有可靠的网络设施。如果网络不可靠,那么当发给接收器的请求丢失时,发送器将一直处于等待状态。发送器直到接收到应答时才会继续下一次请求,但如
6、果不可靠,将极大地破坏这种操作,甚至使之完全不可行。同步通信有三种常用类型:请求/应答 单向方式 轮询方式同步通信中,发送端的应用软件收到来自接收端的回应才会继续通信,以上三种类型在这点要求上有所不同,下面具体讨论。1.请求/应答请求/应答是同步通信中的基本类型,如图 3-1所示。48部分第3章图3-1 同步请求/应答方式通常用于应用软件间通信在请求/应答通信中,一方应用软件发送请求给另一方,然后处于阻塞状态,直到另一方发回响应。这里用“阻塞”来表示等待响应。响应既可以是确认接收,也可以是用回应来完成处理。接受到应答以后,发送器才继续执行,而发送器如何继续操作通常取决于接收器的应答,开发者在应
7、用软件中编程实现。请求/应答通信请求/应答通信是同步通信的一种方式,发送器发送请求给接收器,然后等待,直到收到响应才继续操作。这种方式多用于响应中包含有帮助发送器继续操作的信息的情况。其不足之处在于:发送器必须完全依赖于接收器的响应。如果接收器需要很长时间来处理请求,那么这种方式的效果将非常糟糕而不可行。如果接收器发生故障而不响应请求,那么发送器将彻底不能继续操作。2.单向方式单向方式是请求/应答方式的最简单的形式,因为它只有收到接收的应答才发送一49基本组成模块请求发送响应发送组件2处理请求组件2继续处理组件1模块组件1组件2组件1继续处理个请求和模块,如图3-2所示。图3-2 同步单向方式
8、是同步通信的另一种形式单向方式通信单向方式是同步通信的一种方式,发送器发送请求给接收器,然后等待,收到请求接收的应答才继续操作。这种方式多用于发送器必须与接收器完全同步的情况下。只有接收器收到请求,发送器才能继续操作。其不足之处在于:接收器只能向发送器回送应答信息,其次是,发送器可能会阻塞。不过,收到应答要比等待处理然后接收响应快得多。3.同步轮询同步轮询允许发送器在等待接收器应答的同时继续其他操作。如图 3-3所示,在这种通信方式中,发送器发送请求后,并不以阻塞状态等待,而是继续操作。它必须周期性地停下来检验应答,只要收到应答,就不再轮询而是继续操作。显然,由于发送器在等待响应的过程中能进行
9、有益的操作,因此这种方式很有效。50部分第3章请求发送应答发送组件2处理请求组件2继续处理组件1模块组件1组件2组件1继续处理图3-3 同步轮询方式也是同步通信的一种形式同步轮询通信同步轮询通信是同步通信的一种方式,发送器发送请求给接收器后,并不阻塞,而是继续操作,每隔开发者设定的一定时间间隔,发送器就检验是否收到应答。检测到应答后,进行处理,并且不再轮询应答。如果发送器需要应答但在等待回应的同时又能够继续操作,那么这种方式就相当有用,由发送应用软件的开发者决定是否可行。如果应用软件适合这种方式,那么将改正请求/应答方式和单向同步通信中的缺陷。当然,它也确实有不足之处:由于需要轮询,因此设计难
10、度大大增加。3.1.2 异步通信异步通信并不需要发送器与接收器协同操作来完成通信,其耦合程度比同步通信的低一些。发送器发出请求后继续操作,它并不关心何时收到消息、如何处理消息,也不将来自接收器的反馈结果看作通信的一部分。当信息通信并不需要协同操作或响应时,这种方式很有用。51基本组成模块请求发送响应发送组件2处理请求组件2继续处理组件1 继续处理组件1检查响应,失败,继续轮询模式组件1检查响应,成功,停止轮询组件1组件2异步通信异步通信即,发送器和接收器间的通信是以双方独立操作的方式实现。接收器收到请求也无需处理通信或向发送器响应。只要发出请求,不管接收器如何处理,发送器都继续自己的操作。异步
11、通信有三种常用类型:消息传送通信 发布/订购通信 广播通信当通信的目的只是为了转移信息时,适合选用异步通信,此外,它在网络和服务不太可靠的环境下能正常进行,可以用于,某一应用软件向其他所有拥有相同数据拷贝的软件发送更新后的数据,数据库发生变化。还有一个例子是,某一事件需由另一应用软件的通知来触发。1.消息传送通信在消息传送中,部件1产生并传递消息,然后继续操作,如图 3-4所示。图3-4 异步消息格式允许发送器和接收器继续操作52部分第3章消息传送组件1继续处理组件2接受消息并继续处理组件1 组件2这是异步通信中最简单的一种方式。为了实现有效通信,系统必须有可靠的网络或者是确保传输质量的服务,
12、这种保证传输的服务必须能够通过网络连续发送请求给接收器,直到通信结束。消息传送通信消息传送通信是异步通信的一种方式,发送器发送请求至接收器,请求发出后,发送器就不再关心请求,而是继续操作;请求发送至接收器,进而被处理。这种方式多用于传送信息而不需要回应的情况。如果设有确保可靠传输的服务,这种方式能够在不可靠网络中有效地实现。它最主要的缺点是,如果没有确保可靠传输的服务,就有可能由于请求丢失而无法送到接收器。2.发布/订购通信发布/订购是按照接收器的要求为请求寻址,接收器通过广播它想接收的请求的特征来预订请求。如图3-5所示。发布/订购通信发布/订购通信是异步通信的一种方式,发送器发出请求,由请
13、求中指明的接收器来确定接收器。发布/订购通信中,系统的每个应用软件能够决定各自希望被通知的事件类型。可通过规定信息、数据结构或其愿意接收的请求类型来实现,这由接收应用软件的开发商决定。这种方式多用于接收器由请求的内容指明而且不需要响应的情况。前面介绍的其他方式则是用网络中的地址或位置决定接收器。在有的多步处理集成系统中,请求是对发生事件的通知,此时这种方式很有用。53基本组成模块例如,通知订单处理系统产品订单已经发货或者付款。它的不足在于设计的复杂性:要确定发送器发出的请求被哪些接收器接收。图3-5 异步发布/订购方式在可控信息分发中很常用3.广播通信在异步广播通信中(如图 3-6所示),发送
14、信息给系统中的所有应用软件,由接收器决定是否接收此消息。如果愿意接收,那么接收器将按照开发者已设计好的步骤处理消息。否则,不予理睬。必须慎用广播方式,因为每一个可能的接收器会关注每一次广播的消息,这就有可能造成传输瓶颈。54部分第3章订购消息A消息A发送组件1继续处理消息A发送组件1订购单组件2组件3组件4组件 3 接受消息并继续处理组件4接受消息并继续处理图3-6 异步广播方式是实现信息分发的简单方案广播方式广播方式是异步传输的一种方式,请求发送至网络中的所有接收器,而每个接收器通过检查消息内容来决定是否接收。3.2 集成方法集成方法用于产生从发送器发至接收器的请求,主要有两种:消息传递。接
15、口定义。集成方法的相关概念有连接器或适配器。连接器有时也作为适配器,它是应用软件的接口,隐藏了实现集成的复杂性,决定接收器将要接收的请求类型。无论是55基本组成模块组件1继续处理组件2拒绝消息并继续处理组件3 接受消息并继续处理组件4接受消息并继续处理组件1组件2组件3组件4传递消息还是使用接口,连接器都需要在应用软件中创建“插头”,通过它来传递请求。通信模式或集成方法并不只局限于一种思路,事实上,在第2章“集成的类型”中介绍的集成模型以及建立稳定的 E A I结构都需要几种方法的共同作用。E A I结构越灵活,用到的模型或方法就越多。接下来将详细介绍消息传递和接口定义。3.2.1 消息传递在
16、消息传递集成方法中,发送器产生消息,消息中包括预期的操作信息和完成操作所需要的数据。消息既包括控制信息,也包括数据,这种操作和数据的结合给接收器提供了数据环境。例如,消息中可能包括 1 7 4.3 9美元的金额量和账户号 0 1 7 3 5 9,这些纯粹的数据几乎没有什么意义,但如果加上余额查询这个操作,那么应用软件就能使用这条信息了。消息传递中构造、使用、处理数据的方式很容易理解。数据与控制信息的结合对它们的使用相当重要,因为这降低了不同应用软件间的耦合程度。消息中包含了所有需要的信息,但是,发送器和接收器对消息的编码与解码方式必须完全相同,任何格式上的不一致都会使应用软件误解信息和操作从而
17、导致混乱。应用软件集成的设计者必须预先设定消息格式。一个合理的 E A I结构应该提供给设计者完成设计的工具。任何要发送消息的应用软件必须能执行以下操作:以适当的格式构造消息。例如,一个消息可以包含发送器、接收器、时戳、账号以及金额。发送方应用软件基于消息格式的规定构造消息。将消息送入通信系统。例如,使用异步通信服务将消息传向正确的接收方应用软件,而发送器继续操作。56部分第3章一旦消息进入通信系统,接收器必须执行以下操作:从通信系统中接收消息。在这种情况下,通信系统会通知接收器,进而将消息导入应用软件。分析出消息中的控制信息和数据。将账号、交易操作以及金额从消息中分离出来,然后赋值给对应的变
18、量。决定如何处理消息。接收方应用软件按照设计者的意图进行最恰当的处理,设计者也根据定义的消息格式进行设计。由于很容易改变和扩展控制信息,所以消息应用相当灵活。例如,如果银行允许客户在合法改变,例如,结婚后能在线更改她们的名字,随后用来更改名字的控制代码就被添加到新的消息中,这样就新增了一种叫做更改姓名的消息形式。值得一提的是,消息独立于应用软件。消息传送的不足之处在于:设计者并不总能知道何种应用软件会对何种消息做出回应,除非有清楚的文档和服务来确定,否则消息的控制处理是不可见的。另外,如果消息管理得不好,那么由于集成方式有限的可见性,消息不可能重新使用。3.2.2 接口定义在这种方式中,发送器
19、通过接口进行通信,由接口规定应用软件能调用的操作,任何用于处理的数据也都通过接口进行传输。作为集成方法,消息与接口的区别很细微,但很重要。基于接口的集成要求有严格定义的接口的具体说明和实施细则,以此描述出应用软件所能进行的操作。接口与应用软件关联,而消息则与任何应用软件无关。而且,通过接口,任何应用软件的处理过程很容易识别,也能清楚地确定。前面介绍的消息则隐藏了使用它们的应57基本组成模块用软件。接口的性质使其比消息需要更少的解码处理,而且在开发过程中更容易发现错误。其实,正是由于消息比接口要求的耦合程度低,因此容易出错并且不能重复使用方案。一部分组件使用的接口集成处理符合传统的编程结构。接口
20、使用诸如C、C+、J a v a这样的语言,使应用软件像单一的过程或对象。使用接口的过程如下:1)产生面向组件的调用或呼叫。例如,发送账号和金额参数信息要求进行账户存款。2)发出调用。例如,异步通信系统发出调用。根据异步通信的特性,发送器能够继续操作。接收器必须执行以下操作:接收远程调用和呼叫。通信系统通过接口通知接收端,并传入参数信息。基于特定接口执行操作。接收方应用软件进行相应的操作。以上正是编程中进行过程调用或方法调用的模型。事实上,如果进行顺利,那么应用软件不会认为调用来自其他应用软件,而将它看成是自身内部的请求。区别在于接口外部可视且能够被网络中的任何应用软件调用。长期来看,由于接口
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第3章 基本组成模块 基本 组成 模块
限制150内