对应的教程视频:
1.初识死信交换机
总结:
什么样的消息会成为死信?
•
消息被消费者
reject
或者返回
nack
•
消息超时未消费
•
队列满了
如何给队列绑定死信交换机?
•
给队列设置
dead-letter-exchange
属性,指定一个交换机
•
给队列设置
dead-letter-routing-key
属性,设置死信交换机与死信队列的
RoutingKey
2.TTL
总结:
消息超时的两种方式是?
•
给队列设置
ttl
属性,进入队列后超过
ttl
时间的消息变为死信
•
给消息设置
ttl
属性,队列接收到消息超过
ttl
时间后变为死信
•
两者共存时,以时间短的
ttl
为准
如何实现发送一个消息20秒后消费者才收到消息?
•
给消息的目标队列指定死信交换机
•
消费者监听与死信交换机绑定的队列
•
发送消息时给消息设置
ttl
为
20
秒
3.延迟队列
延迟队列插件
因为延迟队列的需求非常多,所以RabbitMQ的官方也推出了一个插件,原生支持延迟队列效果。
详细安装过程略~~~(我也没装,只是做下笔记,具体怎么装看教程视频吧或是自行查询资料)
总结:
延迟队列插件的使用步骤包括哪些?
•
声明一个交换机,添加
delayed
属性为
true
•
发送消息时,添加
x-delay
头,值为超时时间