rabbitmq队列中消息过期配置

最近公司某个行情推送的rabbitmq服务器由于客户端异常导致rabbitmq队列中消息快速堆积,还曾导致过内存积压导致rabbitmq客户端被block的情况。考虑到行情信息从业务上来说可以丢失部分消息,并不要求完全可靠。为了尽量避免某个客户端未及时消费影响整个mq,故考虑对某些队列中的消息设置TTL。如下:

rabbitmqctl set_policy TTL "ttl.*" '{"message-ttl":60000}' --apply-to queues
具体可查看官方文档https://www.rabbitmq.com/ttl.html。
所有已经存在的消息不受影响,所有新发布的消息如果在发布到queue之后60s内没有被客户端消费,就会自动过期并被erlang vm回收。

posted @ 2016-09-03 18:17  zhjh256  阅读(3551)  评论(0编辑  收藏  举报