Mailinglisten-Archive |
Hallo Leute,
Ich schreibe gerade einen Server. Ich benutze dazu PEAR/Net_Server mit
"fork".
Der Server soll "multithreaded" sein, weil er im produktiven Einsatz mit
vielen gleichzeitigen Anfragen zu tun haben wird.
Deswegen kann ich wohl aus Performancegründen nicht "sequential" nehmen.
Also mein kompletter Server und alles Drumherhum Methoden, alles läuft
nur über Objekte.
Mit Forks komme ich aber auf eine paar Probleme, die ich nicht weiss,
wie ich sie mit PHP im Moment lösen kann.
Es geht um die Persistenz. Ich habe also in meinem Programm Variablen
(Objekte), auf die alle Kinderprozesse lesend zugreifen sollen.
Und schreiben darf dann natürlich dann immer nur einer.
So wie ich das sehe, kriegt im moment jedes Kind die Variablen und
Objekte so mit, wie sie vor dem Fork waren.
Wenn nun ein Prozess diese Variable verändert, so wird dieser Wert nur
für den aktuellen Prozess verändert.
Andere Kindprozesse und der Vater kriegen davon leider nix mehr mit.
Was kann man dagegen tun? Ich brauche irgendwas zum Synchronisieren der
Childprozesse mit dem Vaterprozess...
Mit msg_send und msg_receive könnte es noch klappen oder? Aber wie
aktualisiere ich da ganze Objekte?
Ich hoffe, dass einer von euch ne Idee hat. :)
Oder ist "sequential" dann schlussendlich doch die bessere Methode?
Liebe Grüsse
Marco Weber
php::bar PHP Wiki - Listenarchive