Python 启动工人时celeryd多重死锁
我在我的芹菜挂架项目中使用芹菜挂架。我可以使用celery pylons提供的paster命令启动workers,但是当尝试使用celeryd multi对workers进行后台监控时,我在第一个worker上遇到了死锁。例:Python 启动工人时celeryd多重死锁,python,pylons,celery,Python,Pylons,Celery,我在我的芹菜挂架项目中使用芹菜挂架。我可以使用celery pylons提供的paster命令启动workers,但是当尝试使用celeryd multi对workers进行后台监控时,我在第一个worker上遇到了死锁。例: /path/to/celeryd-multi start w1 --pid=/var/run/celeryd.pid \ --logfile=/var/log/celeryd.log \ --cmd="/path/to/paster celeryd /pa
/path/to/celeryd-multi start w1 --pid=/var/run/celeryd.pid \
--logfile=/var/log/celeryd.log \
--cmd="/path/to/paster celeryd /path/to/pylons_config.ini
> Starting nodes...
> w1.myhost:
在进行了一些调试之后,这似乎发生在芹菜/bin/celeryd_multi.py中的MultiTool.waitexec中,特别是以下行:
retcode = pipe.wait()
我觉得这和celeryd的经营方式有关。有谁有幸用芹菜挂架来监控工人吗?你解决过这个问题吗?我最终放弃了贴纸。相反,我将“celeryconfig.py”放在“myapp/celery/”中。我还添加了“myapp/cellery/init_pylons.py”,其中包含少量胶水代码,用于通过paste.deploy.loadapp加载我的应用程序。我将其添加到celeryconfig.py中的CELERY_导入中,这样我的任务就可以访问我的应用程序的资源。