Dziwne problemy tutaj. Pracowałem nad aplikacją Django i teraz próbuję zaimplementować aplikację Celery. Potrzebuję zarówno zwykłych zadań, jak i zadań okresowych, które należy umieścić w kolejce. Mogę uruchomić celeryd po prostu dobrze i wykonywać z nim zadania (uruchamiam je poleceniem python manage.py celeryd start --settings=settings --loglevel=INFO
).Seler + Django: Nie można uruchomić selerabeat w systemie Windows 7
W systemie Windows nie można wykonać -beat
/-b
, aby włączyć tryb beat; musisz rozpocząć selerabeat jako oddzielną usługę (jest to opisane w sekcji FAQ dokumentacji Celery). Gdybym wpisz w wierszu poleceń - python manage.py celerybeat -s djcelery.schedulers.DatabaseScheduler --settings=settings --loglevel=INFO
- otrzymuję błąd tak:
[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
i celerybeat nigdy rzeczywiście zaczyna. Nie mogę wykonywać żadnych zadań okresowych ... Jakieś pomysły? Znalazłem tylko one other page, gdzie ktoś podkreślił podobny błąd, ale nie zaproponowano rozwiązania.
Jeśli potrzebujesz dodatkowych informacji, daj mi znać. Jestem zaskoczony, ponieważ nie mogę znaleźć żadnych informacji na ten temat i próbowałem rozwiązać ten problem przez cały dzień dzisiaj ... Dziękuję.
Zatrzymałem usługę RabbitMQ ręcznie, odnalazłem i usunąłem 'celerybeat.pid', a następnie uruchomiłem RabbitMQ z powrotem - i teraz działa. Wielkie dzięki, nie wiem, dlaczego sam tego nie próbowałem ... Sądzę, że po prostu byłem zbyt nieśmiały. Dla każdego, kto chce uniknąć tej niedogodności - upewnij się, że zawsze przerwiesz klawiaturę seleryd i celerybeat przed zamknięciem poleceń! – hangtwenty