Skip to content

01 为什么需要消息队列

消息队列

以JVM的进程为例

  1. 生产者进程生产的消息过快,消费者进程消费的速度跟不上,就会导致消息堆积,严重的话会导致堆内存溢出
  2. 如果有多个消费者,那么每次发送数据的时候还需要额外加上一些标记,比如指定消费者,报文编号(防止某个消费者只收到部分消息)

上述这些问题本质上是因为生产者和消费者直接发送消息,耦合度比较高

可以在生产者和消费者之间加一个数据缓冲区,对其进行解耦

数据的缓冲区一般称为消息中间件