企业服务总线术语

发布于 2024-07-17 07:26:55 字数 347 浏览 8 评论 0原文

任何人都可以在 企业服务总线? 我是一名拥有几年经验的 C# 开发人员,但才刚刚开始使用 ESB。

看起来“总线”实际上是一个可以向其发送和接收消息的队列。 我对此很满意。 不过,我正在使用 NServiceBus 处理一些现有代码,我想如果我摸索了“端点”和“传输“术语我的理解将取得巨大的飞跃。

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.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

最终幸福 2024-07-24 07:26:55

让我尝试向您澄清这些术语:

ESB 架构上下文中的总线不应被视为用于消息调度的简单队列。 为了允许集成不同的服务,ESB 提供了更多功能。 ESB 的重要附加功能:

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

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

当然,这些只是术语的非常简短的描述。 请记住,企业服务总线只是特定类型架构(或概念)的术语,但它并没有以任何方式标准化。 因此具体的实现可能彼此有很大不同。
如果您对标准化 ESB 感兴趣,可以看看 JBI(Java Business Integration)。 JBI 有多种可用的开源实现,其中包括 Apache ServiceMixMule, 打开ESB。 Manning 出版的“开源 ESB 实践”一书中对 ESB 技术进行了很好的介绍。

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.

永不分离 2024-07-24 07:26:55

我建议查看与企业应用程序集成 (EAI) 相关的资源,它围绕 ESB 以及用于集成解决方案的各种模型和模式。 将其视为 ESB 架构的 GoF:

http://www.enterpriseintegrationpatterns.com/

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

所有这些模式都会给您一个想法人们使用 ESB 来实现的目标以及这些模式对于解决 DIY ESB 集成的常见陷阱很有用。 我通过这本书以及从书中获取信息的人学到了很多东西。

I would recommend looking at resources related to Enterprise Application Integration (EAI), which revolves around the ESB and various models and patterns used to integrate solutions. Think of it is a GoF for ESB architectures:

http://www.enterpriseintegrationpatterns.com/

and

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

All of these patterns would give you an idea of what people use ESB's to achieve and the patterns are useful for providing common pitfalls of do-it-yourself ESB integration. I've learned an immense amount through that book and through people that source from it.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文