当工人从服务开始时,芹菜不会承担多个任务



我的Python Flask应用程序支持一些长时间运行的任务,这些任务使用API或来自其他系统的CURL调用来调用。

当我通过手动将以下命令输入终端来执行时,它的工作效果非常好。

celery worker -A manage.celery --loglevel=info -f log/celery.log

现在,我想为服务器创建一个服务,如果系统重新启动,这个芹菜工作者应该自己启动。但是,当从服务执行以下命令时,它不会从队列中获取任何新任务。

celery worker -A manage.celery --pool=solo --loglevel=info -f log/celery.log

我可以看到CURL调用击中了服务器,但底层任务并没有在芹菜中开始。

你知道如何解决这个问题吗?

在服务文件中编写的命令中存在问题。我在服务中的命令文件是celery worker -A manage.celery --pool=solo --loglevel=info -f log/celery.log

然而,在终端上,我使用了celery worker -A manage.celery --loglevel=info -f log/celery.log命令。这里没有使用--pool=solo,因此可以执行多个任务。

更新了服务文件中的命令,它也开始在那里执行多个任务。

可以从这个链接中深入了解执行池。

最新更新