如何解决消息队列的延时以及过期失效问题?

RabbtiMQ 是可以设置过期时间的,也就是 TTL。如果消息在 queue 中积压超过一定的时间就会被 RabbitMQ 给清理掉,这个数据就没了。这就不是说数据会大量积压在 mq 里,而是大量的数据会直接搞丢。我们可以进行批量重导。

就是大量积压的时候,直接丢弃数据,然后等过了高峰期以后,比如晚上12点以后,将丢失的那批数据,写个临时程序,然后重新灌入 mq 里面去,手动发到 mq 里去再补一次。

发表评论

后才能评论