接上一篇:RabbitMQ惰性/延迟队列
继续补充RabbitMQ队列知识,
不过优先级队列有啥用?
排队的排队呗。
本来队列就是先进先出,这是第一层排队,
优先级队列则是对队列中的数据按照其优先级进行第二次排队,
高优先级的先被消费。
应用场景:
(1)客服系统:VIP会员、普通会员、游客等,按优先级处理问题;
(2)订单系统:预购订单,优先处理VIP。
(3)等,任何需要按照优先级处理任务的系统。
RabbitMQ从3.5.0版本开始支持优先级队列,队列优先级取值范围:[0, 255]的整数,推荐使用[1, 10]区间的整数。保证性能,如果使用过多级别,会增加CPU负担,尤其是消费的时候。
为队列配置优先级属性,通过x-max-properity参数进行设置,默认队列优先级为0,如果为队列配置优先级属性,请从1开始。
Channel ch = ..<