RabbitMQ 高级特性-- TTL 机制 & 死信队列
1. TTL 机制
在京东下单,订单创建成功,等待支付,一般会给用户 30 分钟时间。如果在这段时间内用户没有支付,则默认订单取消。
该如何实现?
定期轮询(数据库、后台服务等)
用户下单成功,将订单信息放入数据库,同时将支付状态放入数据库,用户付款更改数据库状态。定期轮询数据库支付状态,如果超过30分钟就将该订单取消。
优点: 设计实现简单
缺点: 需要对数据库进行大量的I0操作,效率低下。
RabbitMQ
使用 TTL
...
TTL:Time to Live ...
edwardchu.hashnode.dev3 min read