消息队列的学习 | 青训营笔记

73 阅读2分钟

这是我参与「 第五届青训营 」伴学笔记创作活动的第 16 天

今天我了解了消息队列的相关知识。下面是我的笔记内容。

消息队列发展历程

消息队列的历史:

消息中间件其实诞生的很早,早在1983年互联网应用还是一片荒芜的年代,有个在美国的印度小哥Vivek就设想了一种通用软件总线,世界上第一个现代消息队列软件Te lnformation BuS(THB),他TIB受到了企业的欢迎,这家公司的业务发展引起了当时最牛气的IT公司IBM的意,于是创们厂一开始研发了自己消息队列软件,于是才有了后来的wesphere mq。

再后来微软也加入了战团。接近2000年的时候,互联网时代已经初见曙光。全球的应用程序得到了极大地丰富,对于程序之间互联互通的需求越来越强烈。但是各大IT公司之间还是建立着各种技术壁垒,以此来保证自己的商业利益,所以消息中间件在那个时候是大型企业才能够用的起的高级玩意,但是时代的洪流不可逆转,有壁垒就有打被理垒的后来者,2001年sun发布了jms技术,试图在各大厂商的层面上再包装一层统一的Java规范,Java程序只需要针对jms api编程即可,不需要再关注使用了什么样的消息中间件,,但是jms仅适用于Java编程,2004年AMOP(高级消息队列协议)诞生了,才是真正促进了消息队列的繁荣发展。

业界消息队列对比

  • - Kafka:分布式的、分区的、多副本的日志提交服务,在高吞吐场景下发挥较为出色
  • - RocketMQ:低延迟、强一致、高性能、高可靠、万亿级容量和灵活的可扩展性,在一些实时场景中运用较广
  • - Pulsar:是下一代云原生分布式消息流平台,集消息、存储、轻量化函数式计算为一体、采用存算分离的架构设计
  • - BMQ:和Pulsar架构类似,存算分离,初期定位是承接高吞吐的离线业务场景,逐步替换掉对应的Kafka集群