The final argument ender
@
SplitIce
All is saying that nginx rocks. the fact its not.
Nginx serve static files well, I agree. But for CGI , PHP based sites its apache the one.
nginx 10k test is based on 1k html/jpg file. try something on realworld mate.
Im not saying it rocks without real world experience,
TheWarezScene
lets go back to 2008/09 I cant rember exactly when (around the time worldstream did its purge of sites), TheWarezScene was getting roughly 10k UV per day, 60K Pageviews to PHP per day (ajax and shoutbox included)
We where running on a Premium Server XL from worldstream and it was the only site on the server, we tried apache-mpm-preform, apache-mpm-worker and even apache-mpm-event all using mod_fastcgi with APC (Prefork was tested with mod_php (what we ran origionally) but that crashed the server instantly with a massive loadspike). TheWarezScene was the only major site on this server. Prefork was the worst performer and memory consumer, apache + php-cgi usage was over 3GB and using 100% of the cpu almost always. (Yes we also run xcache)
First we put a nginx service in front of the server and the load dropped from high teens down to 7-8, mostly due to the offloaded static file serving, we where also able to enable keepalive which previously was impossible due to it tieing up a thread/process in all but mpm-event which was buggy.
We then got kicked off our worldstream server in the infamous mass mail (woot I got 3 emails), we moved to a smaller server with server.lu, we migrated to nginx + php-fpm howeaver we ran apache in front for the mod-rewrite we needed until we converted the rewrite rules. This got load down a little but it was in the low teens due to the downgrade, apache was chewing ram & cpu and keepalive had to be disabled again
We then fully moved to nginx and php-fpm, now we sit at an average load of 1 with a spike once a day for awstats and a few other crons. We handle 150K php requests a day for 25K uv (mostly due to an unfixed bug in the ajax link checker)
My reverse CDN
We handle close to 8TB a month of traffc, all passed through the dynamic proxy_pass framework (the same framework as fastcgi_pass). This is handled by a nginx process that never exceeds 80MB ram usage and never registers more than 2% CPU (avg: 0). This includes gzip and unlimited keep alive timeout.
Name any other webserver in that range and ill eat my hat.
The memory and load includes all the other parts of the web server including php-fpm and mysql on the Reverse Proxy. Also includes the cache system in development (30MB Key cache)