天天看点

消息队列在分布式系统中的应用目录消息队列

目录

  • 目录
  • 消息队列
  • 消息队列的种类

消息队列

消息队列(Message Queue,MQ)是大型分布式系统中不可或缺的重要组成部分,主要解决了 应用解耦,异步处理,流量削峰,消息通讯 等问题,支撑实现分布式系统的高并发,高性能,高可用,可伸缩和最终一致性。目前在生产环境中使用较多的消息队列有 ActiveMQ,RabbitMQ,ZeroMQ,Kafka,MetaMQ,RocketMQ 等。

消息队列一般会以中间件的形式存在于分布式系统中,所以也会被称为消息队列中间件。顾名思义,就是将存放消息的队列作为系统组件间通讯的中间件。队列是一种数据结构,具有 FIFO(First In First Out) 的特征,通过队列能够有效将消息的发送和接收分离,以此来解耦不同的功能模块,并同时支持异步处理。实际上异步和解耦只是应用了 MQ 所表现出来的效果,并非是 MQ 所存在的目的。MQ 最初的目的是为了解决通讯问题。

我们都知道在分布式系统中的两个组件之间的通讯,要么使用 HTTP,要么使用自己开发的 TCP,但实际上这两种协议都是比较原始的协议,过于底层,无法为上层应用程序提供更加具体的、贴近需求的功能。例如:HTTP 想要实现两端双工通讯࿰

继续阅读