/ / Interpretieren, Schreiben fehlgeschlagen: Fehlerhafte Pipe-Nachricht für cli-PHP-Skript - PHP, Befehlszeilenschnittstelle, Pipe unterbrochen

Interpretieren, Schreiben fehlgeschlagen: Broken-Pipe-Nachricht für CLI-PHP-Skript - PHP, Befehlszeilenschnittstelle, gebrochene Pipe

Ich führe mit dem folgenden Befehl ein PHP-Skript von ssh aus

./script.php &

Das Skript ist eine Schleife, in der eine Schleife sein solletwa 800.000 Mal (es dauert also ein paar Tage). Derzeit werden jedoch einige tausend Schleifen in den Prozess gestoppt. Meine Fehlerbehandlungsroutinen erkennen keine Fehler aus dem Skript, aber die Konsole liest.

Write failed: Broken pipe

Kann jemand ein Licht darauf werfen, was diese Nachricht bedeutet, auf was für ein Problem dies hinweist und wie ich damit umgehen könnte?

Aktualisieren:

Um zusammenzufassen, was das Skript auswählt, wählt es800.000 Zeilen aus einer Tabelle in meiner Datenbank (auf demselben Server wie das Skript). Für jede Zeile wird ein Restaufruf an die Site eines Drittanbieters ausgeführt und diese Daten werden dann in eine andere Tabelle in derselben Datenbank geschrieben (auf demselben Server wie das Skript).

Antworten:

0 für die Antwort № 1

Broken pipe hat zwei Ursachen:

  1. Das Programm schreibt in eine Pipe, entweder weil es eine Funktion wie verwendet popen() oder die Ausgabe des Skripts wird an eine Pipeline umgeleitet, und das aus der Pipe gelesene Programm wird beendet (oder schließt aus anderen Gründen sein Ende der Pipe).

  2. Das Programm schreibt auf eine Netzwerkverbindung und die Verbindung wird am anderen Ende geschlossen.