消息队列
消息队列(Message Queue)是一种进程间通讯服务,有以下特点:
- 异步通讯
- 支持一对多的发布订阅模型
- 支持一对一的队列模型
常用的消息队列有:RabbitMQ、Apache Kafka、ZeroMQ、Apache RocketMQ 等
RabbitMQ
RabbitMQ 是最广泛使用的消息队列之一:
- 使用 Erlang 语言编写
- 支持 AMQP(Advanced Message Queuing Protocol 高级消息队列协议)
- 支持分布式部署
- 支持插件扩展
Spring AMQP
Spring AMQP 是 Spring 提供的基于 AMQP 的解决方案,由 spring-amqp 抽象层和 spring-rabbit RabbitMQ 实现两部分构成。
特性:
- Listener Container 带内消息的异步处理
- RabbitTemplate 发送接收消息
- RabbitAdmin 自动声明(declare)交换器、队列和绑定
示例
TODO