技术栈

消费确认

ly7689
3 小时前
rabbitmq·死信队列·消息可靠性·消费确认·qos 预取
RabbitMQ 消费确认与预取:manual ack、reject、nack 与 QoS 的取舍假设你负责一个订单履约服务。上游把「订单已支付」事件写进 RabbitMQ,下游消费者负责扣减库存、发短信、写履约单。上线第一周一切正常,第二周某个凌晨消费者进程被 OOM Killer 杀掉,重启后运维发现:有 300 多笔订单明明支付成功了,但库存没扣、短信没发。翻日志,消费者在处理到第 120 条消息时被打断,后面 180 条根本没被消费。
我是有底线的