Michael: Timeout in einem Cronjob umgehen?

Beitrag lesen

Hallo da draußen!

Ich hab ein kleines Problem:
Und zwar würde ich gern ein Script per Cronjob starten, habe aber die Befürchtung, daß das Script je nach zu bearbeitender Datenmenge über die vom Provider vorgegebene Timeout-Grenze (30sek) schießen könnte.

Mein erster Gedanke war, das Script halt rekursiv zu gestalten, so daß es sich selbst wieder aufruft, falls es mit der Bearbeitung nicht fertig geworden ist. Jedoch sind sämtliche Befehle ála exec(), system(), passthru() usw. vom Provider aus Sicherheitsgründen deaktiviert.

Die Alternative das Script als cgi zu schreiben, kann ich auch knicken, da ich von Perl nicht die blasseste Ahnung habe. (Und wenn der Timeout für mich der einzige Pluspunkt gegenüber php ist, bin ich auch nicht sonderlich motiviert, es zu lernen.)

Der Hintergrund ist folgender:
Ich würde gern wohnzeit24.de um eine personalisierte Suchfunktion erweitern. Man kann dort über die Suchseite Zimmer zur Untermiete finden. Sollte jemand jedoch nichts nach seinem Geschmack finden, so sollte er die Möglichkeit haben die Suche in der DB abspeichern zu können.
Der besagte Cronjob sollte dann allnächtlich die gespeicherten Suchabfragen nochmal ausführen um herauszufinden, ob die Suche neue Treffer ergibt und diese gegebenenfalls per Email dem Suchenden zustellen.

Soweit kein Problem - solange, bis die Anzahl der Suchanfragen in der DB die Laufzeit des Suchscripts überfordert.

Mein einziger notdürftiger Ansatz das Problem zu umgehen wär bisher, das Script nicht nur einmal pro Tag, sondern vielleicht einmal pro Stunde zu starten und die zu bearbeitenden Suchanfragen vorab stets nach denen zu filtern, die in den letzten 24h noch nicht ausgeführt wurden.
Das empfinde ich aber eher als Flickwerk.

Wüßte jemand eine elegantere Methode?

Vielen Dank für die Mühe!

Michael