芹菜工闲着几个小时就停了下来

2024-05-23 14:21:46 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个使用WSGI的Flask应用程序。对于一些任务,我计划使用芹菜和RabbitMQ。但正如标题所说,我面临着一个问题:芹菜任务运行几分钟,然后在长时间的不活动之后,它就消失了。在

芹菜配置:

CELERY_BROKER_URL='amqp://guest:guest@localhost:5672//'
BROKER_HEARTBEAT = 10 
BROKER_HEARTBEAT_CHECKRATE = 2.0
BROKER_POOL_LIMIT = None

this问题中,我添加了BROKER_HEARTBEAT和{}。在

我用venvcelery -A acmeapp.celery worker &中运行工作线程,以便在后台运行它。在检查状态时,在最初的几分钟内,它显示一个节点在线,并给出OK响应。但是在应用程序空闲了几个小时之后,当我检查Celery状态时,它显示Error: No nodes replied within time constraint.。在

我是芹菜新手,现在不知道该怎么办。在


Tags: 应用程序url标题flaskwsgi状态rabbitmqbroker
1条回答
网友
1楼 · 发布于 2024-05-23 14:21:46

您的Celery工作人员可能正在尝试重新连接到应用程序,直到它达到重试限制。如果是这样的话,在配置文件中设置这些选项可以解决这个问题。在

BROKER_CONNECTION_RETRY = True
BROKER_CONNECTION_MAX_RETRIES = 0

第一行将使它在失败时重试,第二行将禁用重试限制。在

如果该解决方案不太适合您,您也可以使用此选项为应用程序尝试高超时(以秒为单位指定):

^{pr2}$

希望有帮助!在

相关问题 更多 >