TTL消息详解
2018-08-14 本文已影响21人
HmilyMing
提前说一下,这一小节不涉及代码演示,都是在管控台操作。
TTL消息
TTL是time to live的缩写,也就是生存时间。rabbitMQ支持在消息发送的时候指定过期时间。rabbitMQ支持队列的过期时间,从消息入队列开始计算,只要超过配置的队列超时时间,那么消息会自动删除。
这里就直接在管控台演示就行了,先创建一个队列 test1002

创建 test1002 队列成功:

创建一个交换机 test1002_exchange


创建交换机 test1002_exchange 成功,点击进去绑定queue

绑定成功

直接发送一条消息到交换机里面

消息发送成功后,queue里面就有这个消息记录了

如下所示,过了之前设置的过期时间,还没被消费,这条消息就过期消失了。

特别注意了,TTL的过期和之前在消息里面设置的过期时间是有区别的

消息体里面设置过期时间是指这个消息就只能存活这么久,而队列的TTL是指所有到达我队列这里的消息都是存活这么久。