而要设置一个队列为惰性队列,只需要在声明队列时,指定x-queue-mode属性为lazy即可。可以通过命令行将一个运行中的队列修改为惰性队列:
rabbitmqctl set_policy Lazy "^lazy-queue$" '{"queue-mode":"lazy"}' --apply-to queues
命令解读:
-
rabbitmqctl
:RabbitMQ的命令行工具 -
set_policy
:添加一个策略 -
Lazy
:策略名称,可以自定义 -
"^lazy-queue$"
:用正则表达式匹配队列的名字 -
'{"queue-mode":"lazy"}'
:设置队列模式为lazy模式 -
--apply-to queues
:策略的作用对象,是所有的队列