在 at-least-once 投递语义下,保证「同一条消息被重复投递也只产生一次业务效果」最常见的做法是?

中间件

  1. A.把消费者数量减少到 1 个,串行消费就不会重复处理
  2. B.增大消息的过期时间,让重投消息自然失效
  3. C.消费端幂等:以消息唯一 id 去重(唯一索引 / SETNX)
  4. D.让生产者等待消费者业务回执后再发下一条