这是一个创建于 360 天前的主题,其中的信息可能已经有所发展或是发生改变。
我想到的几种方法:
- 执行失败了就原封不动发回原队列,但是这样在有大量失败的情况下或许会造成单队列压力特别大
- 创建一个专门的重试队列,任务失败了就发到这个重试队列,然后再写一个服务,把重试队列的数据定时吐到主队列,缺点是多了一个服务,不太好维护
- 写进 mysql 然后手动读,感觉 mysql 扛不住
- 用个屁的 kafka ,天天吹性能,但是性能高又怎么样,就是一根高性能水管子,DLQ 重试队列一个没有,还不如换 RabbitMQ 或者 RocketMQ 。喷归喷,但是之后调研发现 rabbit 性能感觉确实一般,RocketMQ 的话感觉脱离阿里云,自己手动搭很容易出问题。
还有没有其他实践可以分享?