Celery + Django: не удается запустить celerybeat в Windows 7

Нечетные проблемы здесь. Я разрабатываю приложение Django, и теперь я пытаюсь реализовать Celery. Мне нужны как обычные задачи, так и периодические задачи, которые нужно поставить в очередь. Я могу запустить celeryd просто отлично и выполнять задачи с ним (я запускаю его с помощью команды python manage.py celeryd start --settings=settings --loglevel=INFO).

В Windows вы не можете сделать -beat/-b, чтобы включить режим бит; вам необходимо запустить celerybeat как отдельную услугу (это указано в разделе часто задаваемых вопросов в документах Celery). Если я введу это в командную строку - python manage.py celerybeat -s djcelery.schedulers.DatabaseScheduler --settings=settings --loglevel=INFO - я получаю такую ​​ошибку:

[2012-01-02 19:06:52,009: WARNING/MainProcess] ERROR: Pidfile (celerybeat.pid) a
lready exists.
Seems we're already running? (PID: 2364)
[2012-01-02 19:06:52,012: INFO/MainProcess] process shutting down

и celerybeat никогда не начинается. Поэтому я не могу выполнять какие-либо периодические задачи... Любые идеи? Я только нашел еще одну страницу, где кто-то выделил аналогичную ошибку, но не было предложено никакого решения.

Если вам нужна дополнительная информация, пожалуйста, дайте мне знать. Я озадачен, потому что не могу найти никакой информации по этому вопросу, и сегодня я пытался решить эту проблему сегодня... Спасибо.

Ответ 1

Найдите свою файловую систему для этого файла pid и удалите ее. На машинах Unix, которые обычно означают, что программа не была отключена правильно. Вы должны проверить, не работает ли его запуск в диспетчере задач, если он его убил, и удалите этот файл

Затем повторите попытку.

Если нет файла pid, возможно, это означает, что проблема с программным обеспечением, поскольку она была перенесена из unix, возможно?

Ответ 2

В моем случае проекта django в Windows этот файл уже был в корне проекта Django. Я удалил этот файл, и процесс прошел без каких-либо ошибок. введите описание изображения здесь

"celerybeat.pid" уже существует, потому что я побежал на дереве с другого компьютера и перебросил репозиторий git в облако. Когда я вытащил репо на свой рабочий компьютер и запустил процесс, он дал мне ошибку, ссылаясь на файл "celerybeat.pid" , созданный ранее другим ПК. Удаление "celerybeat.pid" заставило его работать.