我来自MoM的背景.我想我从概念上理解ESB.但是,在建筑方面做出选择时,我不太确定两者之间的实际差异.
这是我想知道的
1)任何在线的良好链接可以帮助我在这方面.
2)有人可以告诉我使用一个在另一个上有意义.
任何帮助都会有用.
消息传递往往集中在网络周围可靠的消息交换上; 使用队列作为可靠的负载均衡器和主题来实现发布和订阅.
ESB通常倾向于在消息传递之外添加不同的功能,例如编排,路由,转换和中介.
我建议您阅读有关企业集成模式的内容,该模式概述了您将在集成问题中使用的常见模式,这些模式都基于消息总线(尽管也可以与其他网络技术一起使用).
例如使用开源; Apache ActiveMQ提供松散耦合的可靠消息交换.然后,您可以使用Apache Camel实现企业集成模式,以实现智能路由,转换,编排,与其他技术一起使用等等.
我将MOM解决方案和ESB解决方案放在两个不同的平面上.
我认为MOM是ESB解决方案的基石.事实上,ESB解决方案只需使用特定MOM实现提供的范例,即可实现自己的松散耦合和异步通信功能.
因此,MOM代表定制QoS级别的数据/事件分发解决方案(根据特定的供应商实现),而ESB代表提供在SOA场景中实现复杂编排的功能的解决方案(我们有多个提供商提供他们的服务,以及多个有兴趣消费第一批服务的消费者.
复杂的编排意味着遗留系统之间的通信,其中每个人都有自己的数据域表示(特定数据上的规则和服务)和自己的通信范例(一个消费者使用CORBA与ESB交互,另一个消费者使用WS,等等).
很明显,ESB代表了一个更复杂的架构解决方案,旨在提供数据总线的抽象(例如每个人都拥有自己电脑的电子总线),能够将众多服务提供商连接到一个不太明确的过多的服务提供商.服务消费者,隐藏(i)数据表示和(ii)沟通中的异质性.
对于长篇文章感到抱歉,但概念很复杂,很难在简短的陈述中有效和高效.