目录:
消息队列核心原理(一):消息中间件与协议介绍
消息队列核心原理(二):Kafka核心原理
消息队列核心原理(三):RabbitMQ核心原理
前言
这个系列作为Redis之后的系列,一定在排版、内容等方面比Redis总结的更好。但是我不打算在这个系列说一些关于整合Springboot的内容,本系列主要是深入了解消息队列的架构、性能以及不同消息队列之间的差异以及如何选择不同种类的消息队列。
也就是说,我这里不写什么从入门到实战,原因是我不打算对消息队列进行实战解析。但是我会尽可能列举现实的例子帮助思考消息队列的设计原理。因为我会对比Kafka,RabbitMQ和RocketMQ,要是写代码就没边了。
什么是中间件
像计算机操作系统,数据库,中间件,软件都属于软件范畴,操作系统作为最底层软件,肩负着与硬件交流的任务 ,数据库作为数据的存储仓库,势必与软件有着密不可分的交互。而软件就是与用户进行直接对接的载体,似乎已经够了。用户将命令传给软件,软件将数据传给数据库,数据库结合操作系统持久化数据,还缺什么?
缺一个既与客户无关,又与数据的存储无关,但是却导向了数据的一类软件,这就是中间件。至少到现在为止,中间件没有一个广泛认可的定义。根据我的理解,中间件就是连接软上层软件和下层操作系统/数据库之间的桥梁,有了这个桥梁,原本人只能游过对岸,现在人可以开车过去,提升了数据传递的效率,也可以为没有游泳能力的人提供支持。
消息队列就是一类中间件。

本文介绍了消息中间件的基本概念,包括JMS(Java Message Service)及其分类,探讨了为何使用消息队列并举例说明。还对比了主流消息队列Kafka、RabbitMQ和RocketMQ的特点,并简述了AMQP和MQTT两种协议的作用和应用场景。
最低0.47元/天 解锁文章
571





