Partyflock
 
Forumonderwerp · 893539
Wie kan mij helpen?

Ik heb nu de Apache geinstalleerd met Prefork. Maar ik zou Apache graag willen configgen met Worker. De server word op het mom plat getrokken, -met 200 a 300 users gelijktijdig wil dat met een Celeron 2400 ook wel- mij is gezegd dat ik miss beter Apache met Worker kon configgen. Worker kan volgens mij meerdere threads tegelijk verwerken, (maar, maar 1x de Lib gebruikt?) ik weet niet precies wat het verschil tussen die 2 is.

Apache heb ik nu zo geconfigureerd, dat 80 Threads gelijktijdig geopend kunnen worden, met een footprint van 14MB. 80 x 14 MB is 1120MB voor een server met 1500MB is dat zo goed geregeld dacht ik. Heb iig geen swap meer in gebruik, wat wel het geval is als ik meerdere Threads laat openen.

Nu heb ik Prefork eruit gegooid, en de Worker lib geinstalleerd, maar de site oproepen wil niet. Dat kan te maken hebben met de user rechten, maar het heeft ook prima gewerkt, toen ik de Prefork Lib had geinstalleerd.

Weet iemand wat ik in php.ini (bv) moet veranderen, om die Worker aan de gang te krijgen?
Uitspraak van Miss_Marjon; Stuffy; op zondag 13 augustus 2006 om 14:05:
Worker kan volgens mij meerdere threads tegelijk verwerken, (maar, maar 1x de Lib gebruikt?) ik weet niet precies wat het verschil tussen die 2 is.


Het verschil zit hem in dat de systemcall fork() een compleet kopie van het process maakt (middels "copy-on-write"). Threads delen hetzelfde text en data segment van een process. Het aanmaken van een nieuw process ("forking") is langzamer dan het aanmaken van een thread en kost meer geheugen.

Uitspraak van Miss_Marjon; Stuffy; op zondag 13 augustus 2006 om 14:05:
Weet iemand wat ik in php.ini (bv) moet veranderen, om die Worker aan de gang te krijgen?


Je zal apache opnieuw moeten compilen om het aan de praat te krijgen.

./configure --with-mpm=worker (en je andere opties natuurlijk)

De configuratie verder moet in de normale httpd.conf

http://httpd.apache.org/docs/2.0/mod/worker.html

Apache staat er overigens om bekend niet een al te beste performance af te leveren. Dit komt waarschijnlijk door alle functionaliteit die apache biedt. Er bestaan een aantal webservers die sneller zijn als apache maar over het algemeen wel minder functionaliteit bieden. Je zou misschien kunnen overwegen om bijv. alle statische content op zo’n servertje te zetten.

Lighttpd:
http://www.lighttpd.net/
(schijnt erg snel te zijn door het gebruik van de epoll() syscall onder Linux 2.6.x)

Thttpd:
http://www.acme.com/software/thttpd/
laatste aanpassing