连接层esb2
2017-04-18 18:00:06 0 举报
ESB2,全称为Enterprise Service Bus 2,是一种企业服务总线。它提供了一种在分布式系统中进行集成的架构,使得不同的应用程序可以相互通信和协作。ESB2通过定义一组标准的消息传递协议和接口,实现了不同系统之间的互操作性。它还提供了一种集中式管理的方式来监控和管理这些消息传递过程。此外,ESB2还支持多种消息传递模式,包括点对点、发布/订阅和请求/响应等。总之,ESB2是一种强大的集成工具,可以帮助企业实现快速、灵活和可靠的系统集成。
作者其他创作
大纲/内容
为了能让服务请求者和服务提供者之间正常的交互,ESB必须利用通信协议来连接它们。ESB能平衡传输协议之间的差异,在请求者和提供者之间支持不同质量的服务。事实上,ESB本身不提供通信协议,而是利用了操作环境提供的一个或多个基础通信结构。可以说ESB本身提供了接入点和接出点或绑定,以支持各种协议进行交互。由于基础通信结构的特征,通信协议本来就支持一种或多种交互模式,例如有同步、异步、请求/响应、单步和发布/订阅模式。
用复杂的匹配算法去路由正确的服务提供者。
其次,位置和标识的虚拟。位置和标识的虚拟要求ESB支持各种各样的路由。服务路由可以通过配置文件,让ESB按照配置文件的内容从服务请求者到服务提供者发送消息,这种是静态路由;也可以是动态路由,基于在请求和响应时的某些条件。路由中介可以是很简单,也可以很复杂。简单的话,可以什么都不作,只是从服务请求者向服务提供者传递一个地址。一个复杂的路由中介可能会作以下一些事情:
与路由相关的中介模式允许进行简单地址操作、各种形式的注册中心访问和各种形式的决策。更大粒度的路由模式可以帮助实现不同的服务质量;例如,提供请求重试和故障转移,甚至基于从服务注册中心提取的策略来对请求者和提供者进行动态匹配。ESB可以支持更复杂和更成熟的路由模式,例如请求的分发和响应的相关性聚合,甚至是复杂的事件处理。最后,说一下中介流对面向方面的互联的实现: 中介可能记录了从一个请求者到提供者的消息传递情况,中断了一个未知的或认证未通过的请求,也可能中断了一个提供者无效的请求。与之相关的中介模式为此提供了审核、记录、安全和管理策略等一系列的解决方案
访问服务注册器,为了了解服务请求者的消费情况和服务提供者的生产情况。
为了在服务请求者和服务提供者之间通信,ESB必须支持相关的消息模型,这些消息模型定义了在服务交互中定义的消息内容以及格式。为此,ESB必须是与消息模型无关的,并提供配置灵活性以支持服务请求者和提供者定义的消息模型。这种消息模型是基于元数据模型的,元数据模型是一种描述消息内容和格式的方法。XML就是这种元数据模型中的一个例子,一个ESB产品必须支持至少一种消息模型甚至更多的消息。
说明:
通讯协议
为了支持在服务请求者和服务提供者之闻服务的虚拟和面向方面的连接,ESB提供了中介流(mediation flows)。这个中介流包括了接受请求、处理请求、发送请求到服务提供者、接受响应信息、发送响应信息到请求者的一系列过程。 中介流是如何实现服务虚拟化的? 首先,实现协议和交互方式的转换。实现这个功能暗示了在不同的通信协议和交互方式之间的转换。如果ESB同时拥有用于两个协议的接入点和接出点或绑定,则该ESB只能在这两种协议中的一种协议与另一种协议之间转换。交互模式之间的转换可能本来就具有对入站或出站协议的支持,或者可能需要附加的处理。例如,从使用SOAP/HTTP的入站单向请求到使用基于队列的协议的出站单向请求的转换(其中消息模型相同)是固有的,因为基于队列的协议本来就是单向的。相反,使用SoAP/HTTP的入站同步请求/应答,到使用基于队列的单向请求和单向应答的出站异步请求/应答之间的转换,将要求中介流支持基于队列的请求和应答之间的相关性。与转换相关的中介模式包括接入点和接出点以及相关性模式,不过由于相关性是中介流的核心,在许多情况下,中介框架都隐含地包括了相关性模式。 其次,接口。接口的虚拟化要求ESB支持服务请求者和提供者定义的消息模型之间的句法转换。由服务请求者定义的入站消息模型可能必须转成服务提供者所要求的出站服务消息模型,在响应的时候,也要作相应的转换。与转换相关的中介模式允许多种消息模型之间的转换,而且也支持其他形式的消息处理,比如,消息补偿和消息过滤。
中介流
消息模型
处理上述两种情况中的各种传输和转换。
0 条评论
下一页