Wie kann ich Sellerie-Mitarbeitern mitteilen, dass sie keine Aufgaben mehr annehmen sollen? Wie kann ich überprüfen, ob Sellerie-Worker-Aufgaben ausgeführt werden?
Das Szenario
System wird auf einem Server ausgeführt, der aus einer Python / Flask-Webanwendung und Hintergrundaufgaben mit Celery @ bestehBeide Webanwendungen und Sellerie-Mitarbeiter werden als Upstart-Jobs ausgeführt (Webanwendung hinter Nginx)Die Bereitstellung für die Produktion erfolgt mit einem Skript, das:
Stoppen Sie die Upstart-JobsPush Code zum Serverühren Sie alle DB-Migrationen auStarten Sie die Upstart-JobsWie kann ich das Bereitstellungsskript so erweitern, dass Folgendes ausgeführt wird?
Sagen Sie dem Selleriearbeiter, dass er keine Aufgaben mehr annehmen sollWarten Sie, bis alle derzeit ausgeführten Sellerie-Aufgaben abgeschlossen sindStoppen Sie die Upstart-JobsPush Code zum Serverühren Sie alle DB-Migrationen auStarten Sie die Upstart-Jobs