Python Skript mit Geplanten Aufgaben ausführen

  • Folgendes:


    • ich nutze das Webhosting Paket 4000
    • ich habe einen funktionierenden Flask Server der keine Probleme macht
    • ich habe ein Python Skript, welches ca. 30 Minuten braucht um ausgeführt zu werden (viele Anfragen, Datei Uploads, etc.)


    Das zuletzt erwähnte Skript ist das Sorgenkind.


    Mein erster Ansatz war es, das Skript über eine Flask Route auszuführen. An sich klappt das auch, jedoch erhalte ich nach 3 Minuten einen NGINX Timeout (an sich auch verständlich, da erst nach einer halben Stunde eine Antwort kommt). Somit hat sich das Aufrufen der Route über eine geplante Aufgabe erledigt.


    Jetzt ist die Frage, wie ich das Skript anders ans Laufen bekomme. Bei den geplanten Aufgaben gibt es ja auch die Möglichkeit, einen Befehl auszuführen. Jedoch kommt bei diesem die Fehlermeldung, dass Python nicht gefunden werden konnte. Ich habe auch versucht, "usr/bin/python" als SHEBANG (habe das im Netz gefunden) hinzuzufügen, jedoch ohne erfolg.


    Dann habe ich gelesen, dass man über CGI auch ein Python Skript ausführen kann. Jedoch bekam ich dabei nach vielem herumprobieren die Fehlermeldung "End of script output before headers: script.cgi".

    Ich vermute, dass es daran liegt, dass dort auch nicht die python Reverenz gefunden wurde.


    Nun gingen mir die Ideen aus, wie ich das Skript dennoch mit Plesk Webhosting laufen lassen kann.


    Hat jemand evtl. einen neuen Ansatz?


    Gruß, Daniel

  • Kann das Script vielleicht irgendwie geändert werden, sodass es pro Aufruf nur einen kleineren Teil der Aufgaben ausführt? Weil mit so einer langen Laufzeit sehe ich da eher keine Chance beim Webhosting. Da wäre ein kleiner VPS oder RS wohl die bessere Wahl. Dort bist Du allerdings selbst für das System inkl. Absicherung verantwortlich.

    "Wer nur noch Enten sieht, hat die Kontrolle über seine Server verloren." (Netzentenfund)

  • Kann das Script vielleicht irgendwie geändert werden, sodass es pro Aufruf nur einen kleineren Teil der Aufgaben ausführt? Weil mit so einer langen Laufzeit sehe ich da eher keine Chance beim Webhosting. Da wäre ein kleiner VPS oder RS wohl die bessere Wahl. Dort bist Du allerdings selbst für das System inkl. Absicherung verantwortlich.


    Ich habe jetzt versucht das Script über den Flask-ApScheduler auszuführen. An sich klappt das auch, nur bleibt das Script nach 4-5 Minuten stehen. Kann es sein, dass der Flask Server sich nach ein paar Minuten in den Ruhemodus schaltet?