Warum kann der Supervisor das Programm nicht starten?

8

Ich arbeite mit Laravel-Warteschlangenjobs mit Redis und verwende Supervisor, um mehrere Worker zu verwalten.
Ich habe mehr als ein numprocs, die für einige Tage perfekt funktionieren und dann geht der Supervisor runter , selbst wenn der Supervisor im active state ist.

Weil Supervisor im Supervisor mehr als startretries -Wert in configure file zum Starten von Programm / Worker ausgibt, geht das Programm / worker zu FATAL STATE und verarbeitet keine Jobs Wenn alle Arbeiter in diesem Zustand sind, geht der Vorgesetzte unter. Dann müssen wir den Supervisor manuell neu starten, um die Verarbeitung erneut zu starten.

Aber das ist keine richtige Lösung dafür.
Meine Frage ist, warum Supervisor nicht starten kann und was ist die Lösung dafür?
Referenzleiter Doc: - Ссылка
Meine Konfigurationsdatei wie folgt: -

%Vor%

Aktualisieren
Meine Protokolldatei sieht so aus

Meine stdout-Protokolldatei sieht so aus

Jede Hilfe wird sehr geschätzt.

    
Bibhudatta Sahoo 01.02.2018, 07:31
quelle

2 Antworten

1

Die relevanten Protokolleinträge sind:

%Vor%

Der Laravel-Warteschlangen-Worker stoppt sofort nach dem Start aus irgendeinem Grund. Der Warteschlangen-Worker soll lange laufen.

Sie müssen herausfinden, warum es endet; vielleicht hast du irgendwo in deinen Jobs eine exit() oder die() Anweisung.

    
cweiske 09.02.2018 11:09
quelle
1

Ihre Konsumenten / Arbeiter sterben sehr bald nach dem Start. Ein Consumer sollte ein Prozess sein, der in einer Endlosschleife läuft und auf Tasks / Nachrichten wartet. Du hast gesagt, dass du eine Rückgabe () hast, nachdem die Aufgabe abgeschlossen ist, vielleicht stoppt das den Arbeiter.

Versuchen Sie, den Worker manuell auszuführen und anschließend Nachrichten in der Warteschlange zu erstellen. Der Arbeiter sollte nach dem Abschluss von nur 1 Aufgabe nicht aufhören.

    
bogdancep 09.02.2018 21:52
quelle