dedlfix: Mehrere Fragen bezüglich mehrere Tests großer Datenmengen

Beitrag lesen

Tach!

Dann werden Tests und Berechnungen für alle Möglichkeiten durchgeführt. [...] Ich würde gerne wissen, wie man so viele Tests am besten handelt? Ich würde gerne noch mehr Tests machen. Eventuell auch 100.000 oder 1.000.000 gleichzeitig. Die Ausführungszeit ist dafür fast egal ... kann auch gerne über Nacht laufen.

Dann muss es ja auch nicht vom Browser aus angestoßen werden. PHP hat seine Limits von Zeit und Speicher nur wenn es im Webserver eingebunden ist. Von der Kommandozeile aus gestartet kann es so viel Speicher und Zeit nehmen, wie das System zur Verfügung stellt.

Wenn du dennoch den Browser zur Steuerung verwenden möchtest, wäre eine Aufgabenwarteschlange eine Möglichkeit. Der von der Kommandozeile oder zum Systemstart gestartete PHP-Prozess schaut gelegentlich nach, ob Aufträge drinstehen, arbeitet sie dann ab und schreibt das Ergebnis in den als erledigt gekennzeichneten Job. Vom Browser aus kann man die Einträge der Warteschlange steuern und überwachen.

Beachte aber, dass PHP nicht dafür erfunden wurde, dauerhaft zu laufen. Es empfiehlt sich, auch noch einen Mechanismus laufen zu haben, der den PHP-Prozess überwacht und gegebenenfalls neu startet. Wie der aussehen könnte, kann ich dir nicht sagen. Vielleicht ein Cronjob. Andererseits könnte auch der Prozess zur Abarbeitung der Aufgabenwarteschlange cronjobgesteuert laufen und sich bei Nichtvorhandensein von Aufgaben wieder beenden. Damit muss nicht dauernd eine PHP-Instanz laufen, und der Cron-Mechanismus ist ausreichend stabil und verlässlich.

dedlfix.