Back to Library

Apache vs Nginx vs Lighttp vs Cherokee

At the time of writing lghttpd highly scalable but has a know memory leak issues that have been outstanding for years. For many who are not willing to manually restart their server on a regular basis this is not an option.

Nginx is very simple to configure, a dream for static content.

Cherokee (at the time of writing) claims to be the fastest webserver while still being friendly to configure and has hooks for some Apache compatibility (easy to port rewrites, etc).

Apache is well supported however uses much more memory and cpu than Nginx, Lighttp.


half a million requests of a 1.7KiB static files (from cherokee's own site)

Nginx Proxy Strategy

The above webservers performance is suprior for static content but things get more complex when the evironment includes varioius programming lanaguages (php, python, java) etc.

A mixed server strategy is to put Nginx in front of Apache to proxy dynamic requests, and serve static files.

The nginx wiki has good tutorials on setting this up, http://wiki.nginx.org/Main . The downside of this of course is the two sets of config files to learn, and two HTTP servers to keep updated.