Prefork oder Worker ?

Lesenswerte Artikel, Anleitungen und Diskussionen
virus inc.
Posts: 67
Joined: 2002-08-27 02:01

Prefork oder Worker ?

Post by virus inc. » 2004-01-28 23:23

Hi,

habe mal eine Frage welches modul von den beiden das bessere ist.
(ich weis Prefork arbeit nur mit Prozessen und Worker noch mit Threads)

habe für beide eine entsprechende Version von PHP.

Wie sieht es mit stabilität, sicherheit und schnelligkeit aus ?

bzw. wäre eine Entscheidung Hardwareabhängig ?
oder "Traffik" abhängig ?

Danke.

mfg Virus Inc.

majortermi
Userprojekt
Userprojekt
Posts: 930
Joined: 2002-06-17 16:09

Re: Prefork oder Worker ?

Post by majortermi » 2004-01-28 23:38

VIRUS Inc. wrote:habe mal eine Frage welches modul von den beiden das bessere ist.
(ich weis Prefork arbeit nur mit Prozessen und Worker noch mit Threads)
Worker ist immer dann besser, wenn alle Module, die du benutzt, reentrant sind.
Erst nachlesen, dann nachdenken, dann nachfragen... :)
Warum man sich an diese Reihenfolge halten sollte...

majortermi
Userprojekt
Userprojekt
Posts: 930
Joined: 2002-06-17 16:09

Re: Prefork oder Worker ?

Post by majortermi » 2004-01-28 23:40

Nachtrag: Wirklich viel bringt das natürlich nur, wenn du ein Betriebssystem mit einer anständigen Thread-Implementierung benutzt (für Linux gilt das IMHO erst ab Version 2.6).
Erst nachlesen, dann nachdenken, dann nachfragen... :)
Warum man sich an diese Reihenfolge halten sollte...

virus inc.
Posts: 67
Joined: 2002-08-27 02:01

Re: Prefork oder Worker ?

Post by virus inc. » 2004-01-29 08:36

HI,

hm, ich hatte vermutet das worker besser ist (schneller und stabiler) und das es auch hardware schonender ist da ja ein Thread nur den Speicherbereiches seines Prozesses erbt.

Da es sich ja um einen Intel P4 mit HT handelt und demzufolge der Linux Kernel smp4G verwendet wird nahm ich an das die Thread version etliche Vorteile haben sollte,

Von Prefork hatte ich eher vermutet das es langsamer ist und hardwarefressender da ja für jeden neuen Prozess ein neuer Speicherbereich definiert werden muss, dafür sollte es aber stabiler sein da ein Prozess ruhig hängen bleiben kann und die anderen Prozesse nicht beeiträchtigt werden, wogegen aber das abschießen einen Threads wieder schneller einfacher und sicherer ist. Prefork sollte auch sicherer sein da die InterProzess kommunikation wesentlich schwieriger ist als die Thread kom.

Wie seht Ihr das und was würdet Ihr mir so empfehlen ?
Hardware ist zur Zeit : p4 mit 3,2 Ghz und 1gb Ram wird aber noch auf 2 erweitert werden.

insgesamt greifen so ca. können so ca. 100 -1000 Leute zur Zeit gleichzeitig auf der kiste sein.

Danke.

mfg Virus Inc

User avatar
Joe User
Project Manager
Project Manager
Posts: 11583
Joined: 2003-02-27 01:00
Location: Hamburg

Re: Prefork oder Worker ?

Post by Joe User » 2004-01-29 13:57

VIRUS Inc. wrote:habe für beide eine entsprechende Version von PHP.
NAK, da Du Dein PHP mit der GD-Extension, welche erst in PHP5 threadsafe ist, kompiliert hast, musst Du das prefork-MPM verwenden, siehe:
http://httpd.apache.org/docs-2.0/mpm.html
PayPal.Me/JoeUserFreeBSD Remote Installation
Wings for LifeWings for Life World Run

„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.

virus inc.
Posts: 67
Joined: 2002-08-27 02:01

Re: Prefork oder Worker ?

Post by virus inc. » 2004-01-29 14:50

Hi,

ok alles klar.

Danke.

mfg Virus Inc.