Heim >Backend-Entwicklung >PHP-Tutorial >Swoole-Multiprozessproblem bezüglich des unerwarteten Beendens des Hauptprozesses

Swoole-Multiprozessproblem bezüglich des unerwarteten Beendens des Hauptprozesses

WBOY
WBOYOriginal
2016-10-11 14:23:101543Durchsuche

Mein Bruder arbeitet derzeit an einem Multiprozess-Crawling-Dienst. Es gibt jetzt einen Hauptprozess und 10 untergeordnete Prozesse. Wenn der untergeordnete Prozess unerwartet beendet wird, erstellen Sie einen weiteren untergeordneten Prozess.

Aber wenn der Hauptprozess versehentlich den untergeordneten Prozess verlässt, wird er nicht mit ihm beendet, wenn ich diesen Dienst das nächste Mal öffne, werde ich 10 untergeordnete Prozesse erstellen, was nicht nur die Daten durcheinander bringt in redis, nimmt aber auch viel Speicher in Anspruch. Gibt es eine gute Möglichkeit, sicherzustellen, dass die folgenden untergeordneten Prozesse zusammen heruntergefahren werden, wenn der Hauptprozess unerwartet endet? ?

Meine Idee ist, dass exec jedes Mal, wenn der Hauptprozess gestartet wird, das nächste Shell-Skript ausführt. Das Shell-Skript schließt alle zugehörigen Prozesse außer diesem Hauptprozess. Habt ihr einen Rat?

Antwortinhalt:

Mein Bruder arbeitet derzeit an einem Multiprozess-Crawling-Dienst. Es gibt jetzt einen Hauptprozess und 10 untergeordnete Prozesse. Wenn der untergeordnete Prozess unerwartet beendet wird, erstellen Sie einen weiteren untergeordneten Prozess.

Aber wenn der Hauptprozess versehentlich den untergeordneten Prozess verlässt, wird er nicht mit ihm beendet, wenn ich diesen Dienst das nächste Mal öffne, werde ich 10 untergeordnete Prozesse erstellen, was nicht nur die Daten durcheinander bringt in redis, nimmt aber auch viel Speicher in Anspruch. Gibt es eine gute Möglichkeit, sicherzustellen, dass die folgenden untergeordneten Prozesse zusammen heruntergefahren werden, wenn der Hauptprozess unerwartet endet? ?

Meine Idee ist, dass exec jedes Mal, wenn der Hauptprozess gestartet wird, das nächste Shell-Skript ausführt. Das Shell-Skript schließt alle zugehörigen Prozesse außer diesem Hauptprozess. Habt ihr einen Rat?

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn