提前说一下,这一小节不涉及代码演示,都是在管控台操作。
TTL消息
TTL 是 time to live 的缩写,也就是生存时间。rabbitMQ 支持在消息发送的时候指定过期时间。rabbitMQ 支持队列的过期时间,从消息入队列开始计算,只要超过配置的队列超时时间,那么消息会自动删除。
这里就直接在管控台演示就行了,先创建一个队列 test1002
创建 test1002 队列成功:
创建一个交换机 test1002_exchange
创建交换机 test1002_exchange 成功,点击进去绑定 queue
绑定成功
直接发送一条消息到交换机里面
消息发送成功后,queue 里面就有这个消息记录了
如下所示,过了之前设置的过期时间,还没被消费,这条消息就过期消失了。
特别注意了,TTL 的过期和之前在消息里面设置的过期时间是有区别的
消息体里面设置过期时间是指这个消息就只能存活这么久,而队列的 TTL 是指所有到达我队列这里的消息都是存活这么久。
至此,演示完毕。