kostenloser Webspace werbefrei: lima-city


PHP - Maximum execution timeout?

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    adelwoehrer

    Kostenloser Webspace von adelwoehrer

    adelwoehrer hat kostenlosen Webspace.

    Ich hab mir mit der Suche mal ein paar Threads zu diesem Thema angeschaut, aber ich komm einfach nicht auf ein Ergebnis.
    Bei manchen liegt das Timeout mit darauf folgenden "Maximum execution Timeout-Error" bei 20 Sekunden, in ein paar Threads ist von 10 Sekunden die Rede, dann gibts auch noch 30 und 60 Sekunden Threads....

    Ich stoße zwar derzeit nicht an das Limit, es wäre aber schön zu wissen, wo dieses liegt und vor allem, ob man es mit Befehlen wie "set_time_limit();" oder "ini_set();" verändern kann. (Und wenn ja, wie weit?)

    Ich hab auch versucht, beim Setzen des Timelimits zu prüfen, ob er den Befehl überhaupt akzeptiert oder mir einen Error zurück gibt, aber er stoppt dabei das komplette Script, überspringt den ganzen Code, schreibt "Fertig" und Error erhalt ich auch keinen. o.O

    Ich habe auch versucht, ein Execution Timeout mit einer unendlichen while-Schleife zu erzwingen, um mal nachzuschauen....aber da sagt der mir einfach "Die gewünschte Seite kann nicht angezeigt werden".

    Wo liegt den nun das Maximum execution timeout für ein PHP Script, weiß das jemand? :confused:
    Bzw. steht das irgendwo, wo ich nicht nachgeschaut hab?

    EDIT:
    Hab´s gefunden, das Timeout liegt bei 20 Sekunden.
    Da der safemode auf off steht, stellt sich mir aber immer noch die Frage: "Kann man, bzw. wie weit kann man das Limit verlängern?"

    Beitrag zuletzt geändert: 13.10.2010 15:03:54 von adelwoehrer
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Hallo,

    die max_execution_time ist eine Einstellung in einer conf-datei...

    bei lima beträgt die Zeit 20 sekunden.

    wenn du mal auf meine webseite gehst, das ist direkt auf der root nichts anderes als eine phpinfo(); die die Konfiguration des aktuellen Webservers ausgibt.

    es gibt zwar eine möglichkeit, das zu umgehen, aber da will ich hier nicht drüber reden... ich bin froh, dass hier jetzt alles so stabil läuft^^
  4. Autor dieses Themas

    adelwoehrer

    Kostenloser Webspace von adelwoehrer

    adelwoehrer hat kostenlosen Webspace.

    Also wenn mein Script länger als 20 Sekunden läuft, hab ich quasi Pech gehabt? =)
    Gibts da nicht ne Möglichkeit, nach sagen wir mal 15 Sekunden das Script einfach zu beenden und neu zu starten?
    Bzw. ein weiteres Script zu starten, das weiter macht, während das andere ausläuft?

    Es geht mir einfach darum, dass das Script auch alles Querys abarbeitet, bevor es beendet wird.

    Beitrag zuletzt geändert: 13.10.2010 15:13:15 von adelwoehrer
  5. also, hier wär erstmal was zu der ini_set() geschichte:

    http://www.mediengestalter.info/forum/10/php-maximum-execution-time-abfangen-43421-1.html

    ist aber, wie du bei den globals der disabled_functions sehen kannst, gesperrt, also auf lima nciht ausführbar^^ demzufolge entfällt es, nachzuprüfen, ob der safe-mode an oder aus ist... set_time_limit ist eben so deaktiviert...

    5 minuten ist eh grenze, weil die TCP-Verbindung dann auf timeout gesetzt wird, also das ist schonmal obergrenze, obwohl es dafür auch schon workarounds gibt...

    normales Fehlerabfangen geht auch nicht...

    sonst kann man es über den hier versuchen:

    http://php.net/manual/de/function.pcntl-fork.php

    und dann über ein sig zurückholen:

    http://www.dynamic-webpages.de/php/ref.pcntl.php

    in den links jeweils nachzulesen... ist bei mir ein weilchen her, deswegen weiß ich es nicht mehr so genau...

    wäre jetzt der einzige trick, das abzufangen...
  6. Autor dieses Themas

    adelwoehrer

    Kostenloser Webspace von adelwoehrer

    adelwoehrer hat kostenlosen Webspace.

    Ich les mich da mal rein, danke auf jeden Fall.
    Jetzt muss ich mal ne permanente while-Schleife hinbekommen, die er auch über 20 Sekunden lang ausführt.
    Hätte nicht gedacht, dass ich mal daran scheitere, ein sinnloses Programm zu coden. :-P
  7. wenn du nicht gerade lima für den test verwendest, kann ich dir empfehlen, random-daten in eine datenbank zu dampen, so um die 1000000 DS, das dürfte für 8-10 minuten reichen, je nach rechner und algorithmus^^
  8. Autor dieses Themas

    adelwoehrer

    Kostenloser Webspace von adelwoehrer

    adelwoehrer hat kostenlosen Webspace.

    Das hab ich grade gemacht....noch dazu jedes Query einzeln geschickt....irgendwie bekomm ich kein Timeout.
    Der läuft auch nach ner Minute munter weiter.

    Ich schicke UPDATE Querys und lese einfach 100 Millionen mal das selbe ein....das Update macht er ja trotzdem.
    Das mit dem Timeout klappt aber nicht.
    Das Ganze derzeit ohne Methoden, das Timeout zu verlängern.

    Beitrag zuletzt geändert: 13.10.2010 16:05:39 von adelwoehrer
  9. ja, auf lima hast du das gemacht, oder?

    irgendwie lädt die seite auch ganz plötzlich schneller -.-

    mach das zuhause -.-

    ach so, klar...

    wenn der befehl in der warteschlange hängt, wird er natürlich abgearbeitet... also schleifen eigentlich auch.... wie es mit nachfolgeprozessen aussieht, weiß ich nicht...

    also ich hatte den Execution time xceeded oder was der da hinschreibt schon gelegentlich gehabt...
  10. Autor dieses Themas

    adelwoehrer

    Kostenloser Webspace von adelwoehrer

    adelwoehrer hat kostenlosen Webspace.

    Ist im Prinzip ja egal....ich zerbrech mir den Kopf drüber, wenn´s soweit ist.
    Auf meinem privaten Server scheint die Fork() Methode aber zu klappen.
  11. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!