Product: nginx

Update 6: nginx_http_push_module. Turn nginx into a long-polling message queuing HTTP push server.
Update 5: In Load Balancer Update Barry describes how WordPress.com moved from Pound to Nginx and are now "regularly serving about 8-9k requests/second and about 1.2Gbit/sec through a few Nginx instances and have plenty of room to grow!".
Update 4: Nginx better than Pound for load balancing. Pound spikes at 80% CPU, Nginx uses 3% and is easier to understand and better documented.
Update 3: igvita.com combines two cool tools together for better performance in Nginx and Memcached, a 400% boost!.
Update 2: Software Project on Installing Nginx Web Server w/ PHP and SSL. Breaking away from mother Apache can be a scary proposition and this kind of getting started article really helps easy the separation.
Update: Slicehost has some nice tutorials on setting up Nginx.
From their website:
Nginx ("engine x") is a high-performance HTTP server and reverse proxy, as well as an IMAP/POP3/SMTP proxy server. Nginx was written by Igor Sysoev for Rambler.ru, Russia's second-most visited website, where it has been running in production for over two and a half years. Igor has released the source code under a BSD-like license. Although still in beta, Nginx is known for its stability, rich feature set, simple configuration, and low resource consumption.
Bob Ippolito says of Nginx:
The only solution I know of that's extremely high performance that offers all of the features that you want is Nginx... I currently have Nginx doing reverse proxy of over tens of millions of HTTP requests per day (thats a few hundred per second) on a single server. At peak load it uses about 15MB RAM and 10% CPU on my particular configuration (FreeBSD 6).
Under the same kind of load, Apache falls over (after using 1000 or so processes and god knows how much RAM), Pound falls over (too many threads, and using 400MB+ of RAM for all the thread stacks), and Lighty leaks more than 20MB per hour (and uses more CPU, but not significantly more).
See Also
Reader Comments (10)
Do not use it for HTTPs it has serious problems.
why ?
Anonymous.. what serious problems?
Can you expand on that please.
We have used nginx for SSL proxy instead of something like stunnel and the performance was much better and never saw any isssues.
I'm in the process of converting everything I do to use nginx myself.
I haven't found a single reason NOT to use it. Simple configuration, lightning fast, etc. Everything I've read raves about it. I'm excited to start using it, and disappointed we just paid for redundant layer7 capable load balancers, since we could have used nginx as a reverse proxy to do the HTTP-aware load balancing too!
Anybody has experiences in a Tomcat (JAva Servlet) context. I guess it could use the HTTP Connector, bu I wonder if AJP would be supported by nginx.
Does anyone know what happened regarding the issues with caching of uploads slowing performance in some cases (I think it was mostly an issue when using Nginx as a reverse-proxy) ?
It is the only weakness I was aware of...
Anybody has experiences in a Tomcat (JAva Servlet) context. I guess it could use the HTTP Connector, bu I wonder if AJP would be supported by nginx.
Nginx suffered "serious" SSL problems for about 2 weeks a few months ago *if* you used the development version of Nginx and *if* you also used Firefox 3 rc5 and *if* you also used a chained certificate.
In short, claims of serious SSL issues, while containing a grain of truth, are mostly FUD.
Has the product beaten its competitors outstanding out there?
-----
http://underwaterseaplants.awardspace.com">sea plants
http://underwaterseaplants.awardspace.com/seagrapes.htm">sea grapes...http://underwaterseaplants.awardspace.com/plantroots.htm">plant roots
Here is http://groups.google.com/group/turbogears/browse_thread/thread/a56960ea38e3ea6d/e78e98897e720172#eac050092252b78d">Bob Ippolito's original post in the TurboGears mailing list, where he quotes the figures about nginx.