[MQ]消息队列与企业服务总线的简单比较,MQ&ESB

前段时间因需要,回顾了下MQ。将部分整理内容分享备忘:

  消息队列(MQ) 企业服务总线(ESB)
定义 MQ(Message Queue)消息队列。
把要传输的数据放在队列中,通过消息传递队列发送和接收消息数据,实现数据的传递。
ESB(Enterprise Service Bus)
是一个集中式的服务总线,它是传统消息中间件技术与XML、Web服务等技术结合的产物。通过ESB,可以实现集成业务处理,监控系统间消息流动,管理系统间交互的业务服务。
>>传统消息中间件指MQ
解决的问题 传递数据 集成(企业应用整合)
常见产品 ActiveMQ,RabbitMQ,ZeroMQ,Kafka,MetaMQ,RocketMQ OSB,WebSphere,BizTalk,Orion
产品形态 通常是:运行服务 + 监控API(提供监控数据) 通常是:设计器、运行服务、监控管理平台
消息收发协议 相对固定的几种
MQTT、XMPP、Stomp、AMQP、OpenWire
支持得比较广泛(能适配外部各种主流系统所使用的协议)
消息传递模式 通常支持两种:点对点模式、发布订阅模式 能支持更多(消息的整个路由是可编排的,更为灵活)
消息路由控制 弱。具备基本的消息筛选,但不支持复杂控制。 强。支持自定义的编排。
消息处理 不支持(收到是什么消息,发出的数据还是它)。 支持。如:格式转换(将hl7转为xml/内容修改)、拆分(收一个消息拆分为多个发出)、聚合(收多个消息合并为一个)、...
特性支持情况 弱,通常交给外部系统自己实现(视具体MQ产品)。
比如,对消息重复处理的限制机制等,提供了基本保障(一些特殊和异常情况是没有处理的),往往需要外部系统自行扩展实现。
内置会支持和考虑很多特性,以orion为例,内置支持:重复调用限制机制、熔断机制、隔离机制、消息错误箱/垃圾箱机制等。
初步小结 1、ESB包含MQ
2、ESB提供了更多的用于系统集成的功能,包括:消息的路由和处理,支持更多通讯协议(从各种不同系统收发消息)。
3、ESB内置了更多的特性,以支撑对消息的路由控制(重复调用限制、熔断、隔离等)。

 

分享请注明出处
本文链接:https://blog.csdn.net/debug_fan/article/details/104993637

posted @ 2020-03-20 16:52  俊哥V  阅读(1437)  评论(0编辑  收藏  举报