• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

Rechenintensive Prozesse parallel zu Webserver laufen lassen

ohrobot

Newbie
Ich stoße mittels system(..)-Aufruf in einer php-Seite, die als http-cronjob immer mal wieder aufgerufen wird, sehr rechenintensive Encodierungsprozesse an. Nun habe ich das Problem, dass jedes mal wenn das Encoding im Gange ist, die Webserveraktivität dadurch komplett blockiert wird, d.h. es werden keine anderen Webserveraktivitäten, wie Seiten ausliefern, etc. ausgeführt, solange der Encoding-Prozess nicht beendet ist.
Da auf dem Server mehrere andere Webseiten liegen, möchte ich diese jedoch so wenig wie möglich beeinträchtigen.

Gibt es eine Möglichkeit, diese rechenintensiven Prozesse von den Webserveraktivitäten abzukoppeln (und evtl. auch aus der normalen Skript-Laufzeitbegrenzung auszunehmen?) bzw. die Priorität des Prozesses enorm zu "erniedrigen"?

Was ich bereits versucht habe, ist "nice" vor den encodierungsbefehl zu schreiben. Das hat jedoch die performance-blockade leider nicht beseitigt.

ich bin über jede Idee sehr dankbar!

Grüße,
Bernd
 

Dr. Glastonbury

Advanced Hacker
Hi,
schonmal irgendwas, wie nice -n 15 probiert (oder vielleicht sogar 19)?

Damit würdest du dem ganzen eine sehr geringe priorität geben; normal vergibt nice nämlich ne Priority von 10.
 
OP
O

ohrobot

Newbie
ich probier's mal. Alternativ versuch ich auch mal anstelle von system(), exec() zu benutzen...
 
Oben