Here is the comparison between Apache and Nginx. Request processing overhead and real-world application performance measurements included.
http://blog.a2o.si/2009/06/24/apache...nginx-php-fpm/
b.
Printable View
Here is the comparison between Apache and Nginx. Request processing overhead and real-world application performance measurements included.
http://blog.a2o.si/2009/06/24/apache...nginx-php-fpm/
b.
like the nginx
this best web servers
Please try the test over again with the client running on a separate machine. Try not to use ab as it is known to suck resources like a sponge. The apache developers themselves no longer use it for benchmarking because of that reason. An alternative is siege.
Furthermore, in addition to the workload, disclosure of the network and server hardware is a must before any benchmark can be taken seriously.
Any large site use nginx with php ?
I also suggest running the test without the client on the same network.
Thanks for the siege tip, will verify the test results!
About testing from separate machine: I cannot do that as machine is already collocated and only has single 100Mbit connection. The link would be saturated in an instant.
Hardware disclosure: it is all there, in the second subsection, HP DL380 G5 server, or is it something specific that you are missing?
Again, thanks for the tips!
b.
Quote:
"I cannot do that as machine is already collocated and only has single 100Mbit connection. The link would be saturated in an instant."
No it would not using apache benchmark. Apache benchmark does not download images. I benchmark things every day, this is not something to worry about.
True for small files and application benchmarks. But not for 100KB.txt and 1MB.txt benchmark (static file serving); they would saturate 1Gbps ethernet quickly. Heck, they would saturate 10Gbps ethernet.
How? Take a look at the results, let's say 1MB.txt at 32 concurrent clients. The result for nginx is around 1200 requests per second. When you multiply this with the size of a single file (1MB, we neglect the TCP and HTTP headers size), that gives us roughly 1200MB/s throughput. Mind that here we use bytes, not bits.
On the other hand, 1Gb/s ethernet uses BITS per second to describe throughput. When we divide it by 8, we get BYTES per second, which is 125MB/s.
With the capability to serve files with 1200 MB/s the ethernet link with capacity 125 MB/s (1Gbps) is definitely saturated.
b.
PS: The only possible use I see for using another machine is when benchmarking small file serving performance. There you usually note that cpu usage of benchmarking program is greater than that of a http server.