企业服务总线术语

时间:2009-04-20 14:24:20

标签: esb servicebus

任何人都可以在初学者 - 中级水平上解释enterprise service bus背景下的“公共汽车”,“运输”和“终点”的术语吗?我是一名C#开发人员,现在有几年经验,但只是刚刚开始使用ESB。

似乎“总线”实际上是一个可以发送和接收消息的队列。我很好。但是我正在使用NServiceBus处理一些现有的代码,我想如果我理解了“端点”和“传输”术语,我会在理解中实现大幅度的飞跃。

2 个答案:

答案 0 :(得分:9)

让我试着向你澄清这些条款:

ESB体系结构上下文中的

总线不应被视为用于消息分派的简单队列。为了允许集成不同的服务,ESB提供了更多功能。 ESB的重要附加功能:

  • 路由。消息可以路由到不同的服务,具体取决于消息内容或端点规范。
  • 不同格式之间的消息转换/中介
  • 传输协议转换。 ESB应该能够无缝集成应用程序 使用不同的传输协议(JMS,HTTP / S,纯TCP等)
  • 消息增强。在进一步处理之前,可以使用缺少的数据来丰富消息。
  • 安全
  • 管理和监控

这些功能是由在ESB内运行的服务提供的。服务通过端点相互连接 - 统一,唯一的“地址”。在端点之间分派的消息使用统一的传输(封装消息的有效负载的方法/协议)。本机使用不同传输的应用程序需要通过适当的适配器连接到ESB - 将提供必要的传输转换的服务。这样,使用ESB的应用程序就会相互分离,而不需要自己提供转换。

当然,这些只是对术语的非常简短的描述。请记住,企业服务总线只是特定类型的体系结构(或概念)的术语,但它没有以任何方式标准化。因此,具体实现可以彼此非常不同。 如果您对标准化ESB感兴趣,可以查看JBI(Java Bussiness Integration)。有几个JBI的开源实现可用,其中包括Apache ServiceMixMuleOpenESB。在Manning出版的“Open Source ESBs in Action”一书中介绍了对ESB技术的非常好的介绍。

答案 1 :(得分:1)

我建议查看与企业应用程序集成(EAI)相关的资源,这些资源围绕ESB以及用于集成解决方案的各种模型和模式。可以认为它是ESB体系结构的GoF:

http://www.enterpriseintegrationpatterns.com/

http://www.enterpriseintegrationpatterns.com/toc.html

所有这些模式都可以让您了解人们使用ESB实现的目标,这些模式对于提供自助式ESB集成的常见缺陷非常有用。我通过这本书以及从中获取的人都学到了很多。