首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >消息代理和ESB之间的区别

消息代理和ESB之间的区别
EN

Stack Overflow用户
提问于 2009-04-21 16:34:02
回答 3查看 102.4K关注 0票数 139

我看过不同的关于Message Broker和ESB的问题/文章(甚至是关于stackoverflow的)。仍然不知道消息代理和ESB之间的明显区别是什么?现在我试着比较一下Websphere Broker和Mule ESB的产品!

首先,(任何版本) Webshere Broker是ESB吗?我们的IBM产品人员声称它是一个ESB!(我对此并不感到惊讶)。

我有限的信息告诉我,Message Broker在中心辐射型模型上工作。但是,ESB在总线体系结构上工作。这到底是什么意思呢?我已经读过了,如果集线器失败(我猜不可用),那么代理就完全失败了。这不是ESB的情况(这些家伙这么说)。这里我不理解的是“如果总线出故障了怎么办”?

现在关于ESB和Broker的通常内容是,它们提供路由、转换、编排等。因此,如果它们都提供了这一点,那么为什么我要选择一个而不是另一个。

另一个冲突领域是关于转换。与Message Broker相比,ESB是否以不同的方式促进它?我真的很想了解一下这方面的情况。

现在讨论一下水平缩放。谁胜过谁?或者它们在复杂度(或任何其他因素)方面都是同等可伸缩的。当然,在成本方面,Webshpere Broker会向你收取每个盒子的费用(更不用说每个cpu了)。我相信,即使是商业的MULE ESB也不会这样做。抛开成本不谈,ESB扩展和Message Broker扩展的含义是什么?我碰巧知道您可以在ESB中扩展到服务级别。在消息代理中这是可能的吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2009-06-25 02:53:01

您可以在没有服务总线的情况下使用转换代理,反之亦然。就具体产品而言,我不认为任何一种产品是纯粹的,因为它们相互补充的方式。一些产品在一个领域更强,另一些产品在另一个领域更强。也许需要根据哪个函数最好地覆盖单个问题来做出选择。

与ESB产品相比,代理可能具有更好的内置“乐高积木”来构建转换链。作为ESB被迫提供服务的代理可能会在负载下崩溃,伸缩性不佳,或者可能缺乏健壮的日志记录和处理日志的工具。

一旦发现并修复了逻辑中的严重错误,一些ESB允许回滚数据库更新,并将队列重放到已更正的应用程序中。我不认为大多数代理集成了这种级别的事务支持。为了在你的所有“交易”中发挥作用,几乎必须是业务事件(出售、续签、所有权变更等)。而不是像RPCish那样的“数据库更新”。

票数 30
EN

Stack Overflow用户

发布于 2009-04-22 19:16:20

免责声明:我是一名WebSphere顾问,专门研究IBM。这条评论不会以任何官方身份留下。

ESB更像是一种体系结构模式或概念,而不是一种产品--广义地说,它是一种基于服务的松散耦合工程方法。它的定义是争论不休的,并不是一成不变的。一般而言,ESB是一组不相关的(在技术意义上)服务-它们公开接口,并从其他服务使用这些接口。通常不会涉及到中心辐射型架构,尽管可能会有。

当然,和IBM都是可以轻松构建WebSphere (以及DataPower硬件设备)的产品。它们有不同的技术根源,但在目的上有一些重叠。此外,这并不是说你不能用许多其他东西来构建ESB,这些东西没有被标记为“ESB产品”。

这并没有回答您的所有问题,但希望能解决IBM部分。

票数 24
EN

Stack Overflow用户

发布于 2019-09-21 03:23:47

IBM已经更改了他们的ESB产品的名称,所以我不会详细介绍这些名称或供应商。

ESB允许业务信息在跨多个硬件和软件平台的不同应用程序之间流动。ESB更像是一个中间件层,它包含应用程序连接逻辑,甚至没有业务逻辑。这允许应用程序做它最擅长的事情,而不必担心如何嵌入任何连接逻辑来与其他N个需要数据的应用程序进行交互。ESB体系结构试图解决企业中点对点的意大利面混乱。

ESB和Message Broker在某种程度上是彼此的同义词,但是,正如上面的一个响应所强调的那样,Message Broker模式是更大ESB域的一部分。ESB中的字母"B“类似于计算机体系结构中的总线(硬件)。主板上或计算机中的总线连接用于计算机功能的各种组件。ESB是连接企业中各种服务的基于软件的总线。中心辐射型是ESB体系结构支持的模式之一。在单一世界中,每个供应商都有自己的高可用性部署体系结构,以确保ESB可用。任何企业服务总线供应商最近的产品都是基于微服务的部署模型,或者托管在他们自己的云中,称为iPAAS。因此,这确保了总线永远不会出现故障或临时故障,并根据您选择的部署模型进行自我修复。通过基于微服务的部署或iPAAS,企业服务总线现在具有自动伸缩功能(水平或垂直),其功能随所选供应商的不同而不同。

对于ESB提供的非常高级的功能,您可以通过以下链接访问=> https://en.wikipedia.org/wiki/Enterprise_service_bus

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/773503

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档