站长网 教程 RabbitMQ系列教程一:音讯中间件的三国演义

RabbitMQ系列教程一:音讯中间件的三国演义

1.消息中间件其实诞生的很早,在互联网应用还是一片荒芜的年代,有个在美国的印度哥们Vivek Ranadive就设想了一种通用软件总线,采用发布订阅的模式,像主板上的总线一样供其他相应程序接入。他创办了一家公司Teknekron,实现了世界上第一个消息中间件The

1.消息中间件其实诞生的很早,在互联网应用还是一片荒芜的年代,有个在美国的印度哥们Vivek Ranadive就设想了一种通用软件总线,采用发布订阅的模式,像主板上的总线一样供其他相应程序接入。他创办了一家公司Teknekron,实现了世界上第一个消息中间件The Information Bus(TIB)

各自为战

2.TIB受到了企业的欢迎,Teknekron的业务发展引起了当时最牛气的IT公司IBM的注意,于是他们也开始研发了自己消息队列软件,于是才有了后来的wesphere mq,微软也陆续加入了战团。由于商业壁垒,商业MQ供应商想要解决应用应用互通的问题,而不是去创建标准来实现不同MQ产品间的互通,或者允许应用程序更改MQ平台

劫制天下

3.为了打破这个壁垒,同时为了能够让消息在各个消息队列平台间互融互通, JMS (Java Message Service) 应运而生 。JMS 试图通过提供公共 Java API 的方式,隐藏单独 MQ 产品供应 商提供的实际接口,从而跨越了壁垒,以及解决了互通问题。从技术上讲, Java 应用程序只需 针对 JMS API 编程,选择合适的 MQ 驱动即可, JMS 会打理好其他部分 。ActiveMQ 就是 JMS 的 一种实现 。不过尝试使用单独标准化接口来胶合众多不同的接口,最终会暴露出问题,使得 应用程序变得更加脆弱 。所以急需一种新的消息通信标准化方案 。

一统江湖

4.在 2006 年 6 月,由 Cisco 、 Redhat 、iMatix 等联合制定了 AMQP 的公开标准,由此 AMQP 登上了历史的舞台 。它是应用层协议的一个开放标准,以解决众多消息中间件的需求和拓扑结 构问题 。它为面向消息的中间件设计,基于此协议的客户端与消息中间件可传递消息,并不受 产品、开发语言等条件的限制 。

合久必分

5.LinkedIn在实现消息队列的时候觉得AMQP规范并不适合自己,所以Kafka并不支持AMQP协议。RocketMQ在实现上借鉴了Kakfa的思想,所以也不支持AMQP协议,并且你会发现在Kafka和RocketMQ中都有类似Topic和Consumer Group的概念,而这些概念在AMQP协议中是不存在的

本文来自网络,不代表站长网立场,转载请注明出处:https://www.tzzz.com.cn/html/video/2021/0523/4253.html

作者: dawei

【声明】:站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。
联系我们

联系我们

0577-28828765

在线咨询: QQ交谈

邮箱: xwei067@foxmail.com

工作时间:周一至周五,9:00-17:30,节假日休息

返回顶部