Je les ai testees moi-meme. J'ai fait toute une serie de benchmarks sur le port d'apache2.
Tu as entre 40% et 65% de "boost" en plus, entre le apache2 "out-of-the-box" avec un kernel GENERIC, et ces 3 optimisations "simple".
Sur un athlon XP 2000, 512Mo SDRAM, sur une carte mere Elite avec la carte reseau integre (sis), apache 2 avec MPM=worker.
Avec httperf tu as:
Out-of-the-box: 570 req/s
Avec les points 1 et 2: 810 req/s
avec le scheduler ULE, tu perds 5% compare au scheduler 4BSD. je n'ai pas teste avec les dernieres modifs de jeff roberson, mais ULE devrait au moins egaler 4BSD maintenant.
Tu peux gagner 5-10 % avec posixsem (sous tres haute charge) et en modifiant le nb de threads max.
Pour info ces tests ont ete realise avec le patch originel de Paul Querna, avant le cleanup explicite (a jour dans le patch), ce qui devrait eviter qq memory leaks et eviter au process "root" de nettoyer (tu peux donc esperer un gain significatif).
Entre temps, la pile IP a ete nettoye (fine grained locking) donc apache devrait etre un peu plus reactif (niveau reseau).
(*): pour info "AcceptMutex pthread" sera supporte dans FreeBSD 6.x uniquement, car l'ajout pthread_mutexattr_setpshared() necessite un bump de la libc qui n'est plus possible depuis le code freeze de FreeBSD 5.0
[^] # Re: add-ons
Posté par nullisimo . En réponse au journal En finir avec BIND et ProFTPD :). Évalué à 5.
Tu as entre 40% et 65% de "boost" en plus, entre le apache2 "out-of-the-box" avec un kernel GENERIC, et ces 3 optimisations "simple".
Sur un athlon XP 2000, 512Mo SDRAM, sur une carte mere Elite avec la carte reseau integre (sis), apache 2 avec MPM=worker.
Avec httperf tu as:
Out-of-the-box: 570 req/s
Avec les points 1 et 2: 810 req/s
avec le scheduler ULE, tu perds 5% compare au scheduler 4BSD. je n'ai pas teste avec les dernieres modifs de jeff roberson, mais ULE devrait au moins egaler 4BSD maintenant.
Tu peux gagner 5-10 % avec posixsem (sous tres haute charge) et en modifiant le nb de threads max.
Pour info ces tests ont ete realise avec le patch originel de Paul Querna, avant le cleanup explicite (a jour dans le patch), ce qui devrait eviter qq memory leaks et eviter au process "root" de nettoyer (tu peux donc esperer un gain significatif).
Entre temps, la pile IP a ete nettoye (fine grained locking) donc apache devrait etre un peu plus reactif (niveau reseau).
References:
man accf_http
man kqueue
man polling
http://httpd.apache.org/docs-2.0/misc/perf-tuning.html(...) (*)
http://marc.theaimsgroup.com/?t=108650227500001&r=1&w=2(...)
code source d'apache 2 ;-)
(*): pour info "AcceptMutex pthread" sera supporte dans FreeBSD 6.x uniquement, car l'ajout pthread_mutexattr_setpshared() necessite un bump de la libc qui n'est plus possible depuis le code freeze de FreeBSD 5.0