企业服务总线术语 [英] Enterprise Service Bus Terminology

查看:84
本文介绍了企业服务总线术语的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

企业服务总线?我是一位具有几年经验的C#开发人员,但是只是开始使用ESB。



似乎总线实际上是一个队列,您可以发送和接收消息。我很好。但是,我正在使用 NServiceBus 来处理一些现有代码,并且我想如果我在端点和运输术语,我将在我的理解方面取得重大进步。

解决方案

让我尝试向您说明这些术语:<在ESB体系结构中,/ p>

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




  • 路由。可以将消息路由到不同的服务,具体取决于消息内容或端点规范。

  • 不同格式之间的消息转换/中介

  • 传输协议转换。 ESB应该能够无缝集成使用不同传输协议(JMS,HTTP / S,纯TCP等)的应用程序

  • 消息增强。在进一步处理之前,可以使用丢失的数据来丰富邮件。

  • 安全性

  • 管理和监视



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



当然,这些只是术语的非常简短的描述。请记住,企业服务总线只是特定类型的体系结构(或概念)的流行术语,但绝不是标准化的。因此,具体的实现可能彼此非常不同。
如果您对标准化的ESB感兴趣,可以看看JBI(Java Bussiness Integration)。有几种可用的JBI开源实现,其中 Apache ServiceMix M子 OpenESB 。曼宁出版的《 行动中的开源ESB 》一书中对ESB技术进行了很好的介绍。


Can anyone explain at a beginner-intermediate level the terminology of "bus", "transport" and "endpoint" in the context of an enterprise service bus? I'm a C# developer with a few years experience now, but only just starting working with an ESB.

It seems that the "bus" is effectively a queue to which you can send and receive messages. I'm fine with that. However I'm working on some existing code using NServiceBus and I think if I grokked the "endpoint" and "transport" terminology I'd make a massive leap forward in my understanding.

解决方案

Let me try to clarify those terms to you:

Bus in context of ESB architecture should not be considered as simple queue for message dispatching. To allow integration of different services, ESB provides much more. Important additional functionalities of ESB:

  • Routing. Messages can be routed to different services, depending on message content or endpoint specification.
  • Message Transformations/Mediations between different formats
  • Transport protocol conversion. ESB should be able to seamlessly integrate applications that use different transport protocols (JMS, HTTP/S, pure TCP, etc.)
  • Message enhancement. Messages can be enriched with missing data before further processing.
  • Security
  • Management and Monitoring

Those functionalites are provided by services that operate within ESB. Services connect to each other via endpoints - uniform, unique "addresses". Messages dispatched between endpoints are using unified transport (method/protocol that encapsulates message's payload). Application that natively use different transport, need to connect to ESB via suitable adapter - service that will provide necessary transport conversion. This way applications that use ESB are decoupled from each other and don't need to provide conversions themselves.

Of course, those are only very brief descriptions of terms. Remember, Enterprise Service Bus is only catch-term for specific kind of architecture (or concept), but it is not standardized in any way. So specific implementations can be very different from each other. If you are interested in standardized ESB, you can take a look at JBI (Java Bussiness Integration). There are several open-source implementations of JBI avalable, among them Apache ServiceMix, Mule, OpenESB. Very good introduction to ESB technologies is presented in "Open Source ESBs in Action" book published by Manning.

这篇关于企业服务总线术语的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆