rabbitmq 如果队列中没有消息,dramatiq worker是否可以自动关闭?

rseugnpd  于 2023-01-02  发布在  RabbitMQ
关注(0)|答案(1)|浏览(220)
    • bounty将在4天后过期**。回答此问题可获得+50的声誉奖励。Saurabh Saxena正在寻找来自声誉良好来源的答案

我正在运行一些dramatiq作为kubernetes作业。用例要求pod在队列中没有消息时关闭。所以我需要的是dramatiq工作进程在队列中没有消息时关闭。
在dramatiq里有可能做到吗?

7bsow1i6

7bsow1i61#

是的,可以将Dramatiq工作进程配置为在队列中没有消息时关闭。
您可以使用--graceful-timeout选项启动Dramatiq工作程序:

dramatiq worker --graceful-timeout=60

或者更准确地说你可以尝试

dramatiq worker --graceful-timeout=60 --max-graceful-timeout=300

将启动一个工作线程,如果60秒后没有消息可用,则该工作线程将关闭,但如果消息继续到达,则该工作线程将等待最多300秒。

相关问题