使用消息队列的好处 1)解耦 2)异步 3)削峰限流 如果保证不会重复消费 1)给每个消息都配一个全局id (可以用redis来实现例如这样:xxx-rid,全局id+消息id),如果消费过的,就把他记录到redis中,每次消费前先去读有没有该记录。 2)插入的操作的话,那就没有就插入,最多有的话就再更新一下。 3)更新操作set的话,重复消费没什么影响的,就是set多几次而已 4)可以从生产者的角度去想,每次发送消息前,先查询下数据库是不是已经有记录了。