Message Broker和ESB之间的区别 [英] Difference between a Message Broker and an ESB

查看:158
本文介绍了Message Broker和ESB之间的区别的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我经历了关于Message Broker和ESB的不同问题/文章(即使在stackoverflow上也是如此).仍然不是一个线索,因为Message Broker和ESB之间的CLEAR划界区别是什么?现在,我在这里尝试比较Websphere Broker和Mule ESB产品!

I have gone through different questions/articles on Message Brokers and ESBs(Even on stackoverflow). Still not a clue as what is the CLEAR demarcating difference between an Message Broker and an ESB? Now here I am trying to compare products, Websphere Broker and Mule ESB!!

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

Firstly , is (any version) Webshere Broker an ESB? Our IBM product guys claims it to be an ESB!(I am not surprised about that).

我的有限信息告诉我Message Broker适用于HUB-SPOKE模型.但是,ESB在总线体系结构上工作.现在这到底意味着什么?我已经阅读过,如果HUB失败(我想这不可用),则代理完全失败. ESB并非如此(这些家伙说).我在这里不明白的是如果BUS失败了怎么办?"

My limited information tells me that a Message Broker works on a HUB-SPOKE model. However the ESB works on a bus architecture. Now what on earth is that supposed to mean? I have read than if the HUB fails(unavailable I guess) then the broker completely fails. Which is not the case of an ESB(So those guys say). What I dont understand here is "What if the BUS" fails?

现在,关于ESB和Broker的通常的东西是,它们提供路由,转换,编排等.因此,如果它们两者都提供了,那我为什么还要选择一个呢?

Now the usual stuff about an ESBs and Brokers is that , they provide routing,transformation, orchestration etc.. So if both of them provide this, then why would I choose one over the other.

冲突的另一个领域是关于变革.与Message Broker相比,ESB是否以不同的方式促进了它的发展?我真的很想对此有所了解.

Another area of conflict is regarding the TRANSFORMATION. Does ESBs facilitate it in a different way when compared to Message Brokers? I would really love some insight on this.

现在谈论水平缩放.谁胜过谁?或者,就复杂性(或任何其他因素)而言,它们是否具有同等的可伸缩性.当然,从成本上考虑,Webshpere Broker将为您收取每盒费用(更不用说每个cpu了).我相信,即使是商业MULE ESB也不会这样做.除了其中的成本"部分,ESB扩展和Message Broker扩展的含义是什么.我碰巧知道您可以扩展到ESB中的服务级别.可以在Message Broker中做到这一点吗?

Now talking about HORIZONTAL scaling. Who outperforms the whom? Or are both of them equally scalable in terms of complexity(or any other factors). Ofcourse cost wise, Webshpere Broker is gonna charge you for each box(let alone each cpu). I believe , even the commercial MULE ESB doesnt do that. Leaving aside the Cost part of it, what are the implications of ESB scaling and Message Broker scaling. I happen to know you can scale up to Service Level in ESB. Is this possible in a Message Broker?

推荐答案

您可以使用不带服务总线的转换代理,反之亦然.就特定产品而言,我认为任何一个都不是纯粹的一个或另一个,因为它们彼此互补的方式.有些产品在一个领域更强大,而其他产品在另一个领域更强大.也许需要根据哪种功能最能解决单个问题做出选择.

You can use a transformation broker without a service bus, and vice versa. In terms of specific products I don't think any one is purely one or the other because of the way each complements the other. Some products are stronger in the one area, other stronger in another. Perhaps a choice needs to be made based on which function best covers an individual problem.

与ESB产品相比,经纪人可能具有更好的内置乐高积木"来构建转换链.充当ESB的经纪人可能会承受沉重的负担,无法很好地扩展规模,或者可能缺少健壮的日志记录和处理日记帐的工具.

A broker may have better built-in "lego blocks" for constructing a transformation chain than an ESB product does. A broker pressed into service as an ESB may be crushed under load and not scale well, or may lack robust journaling and tools for dealing with journals.

某些ESB允许一旦发现并修复了逻辑上的严重错误,就可以将数据库更新回滚,并可以将队列重播到更正后的应用程序中.我认为大多数经纪人都不会集成这种级别的交易支持.为了使它能够在所有事务"中正常工作,几乎必须是业务事件(销售,续订,所有权变更等),而不是像RPCish的数据库更新"之类的事情.

Some ESBs allow database updates to be rolled back and queues to be replayed into a corrected application once an egregious error in logic has been uncovered and fixed. I don't think most brokers integrate that level of transactional support. For this to work at all your "transactions" almost have to be business events (a sale, a renewal, a change of ownership, etc.) rather than something like RPCish "database updates."

这篇关于Message Broker和ESB之间的区别的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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