Performance

Nginx is known for its low resource consumption. So you can manage the server resource efficiently to use the extra resource for a reverse proxy or memory cache.

Low resource consumption

Nginx uses a much more scalable event-driven (asynchronous) architecture, so it uses small amounts of memory under load.

Power of the reverse proxy

Nginx is a reverse proxy too. As for cached content, on the right environment, the reverse proxy of Nginx is 50 to 100 times faster than without the proxy, and the load average doesn’t go up.

Good for simultaneous requests

Compared Apache and Nginx with Apache bench on a local virtual environment, the result is below.

Apache/2.2.14 nginx/1.0.6
-c 1 -n 100 2.34 2.51
-c 10 -n 100 1.80 2.46
-c 20 -n 100 1.39 2.16
-c 50 -n 100 N/A 2.10
* Requests per second.
* -c : Number of multiple requests to perform at a time.
* -n : Number of requests to perform for the benchmarking session.
* Environment: VirtualBox on iMac (Late 2009), Ubuntu 10.04 server, memory 512M, WordPress 3.2.1

With Apache, as concurrent requests increase, the performance went down, but with Nginx, not went down so much. Also, with Apache, concurrent requests was 50, the load average went over 50 and the server stopped.