celery beat 之Pidfile (celerybeat.pid) already exists报错

匿名 (未验证) 提交于 2019-12-03 00:11:01

今天在django中利用celery来自动添加任务时,执行celery beat -A celery_task -l info启动一个添加任务的服务时报错:Pidfile (celerybeat.pid) already exists

celery beat在运行时,会自动创建两个文件:

  • pidfile:默认为celerybeat.pid,保存在项目根目录。
  • scheduler:默认为celerybeat-schedule,保存在项目根目录。

这里的报错说明pidfile已存在。上次运行的时候,已经自动创建了,进程结束的时候并未自动删除,从而导致再次运行的时候报错了。

直接删除这个pidfile文件,再次启动celery beat

celery beat -A celery_task -l info

运行成功了。

那么难道每次重启都得先删除么?参考网上说法,如果在启动celery beat的时候配置pidfile参数,并将该参数设置为空,可以规避这个问题。

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!