On a project I'm on (private web based application accessed by 1,000s of users) we're looking to shard off the loading of static content to a separate server (e.g. as a CDN) for improved performance.

I'm only looking to serve up static (.JS, .CSS, .GIF, .JPG, & .PNG files) that will rarely change, and will hopefully be heavily cached by the end users.

Therefore I'd like to be able to set this up to not serve up cookies, gzip the text based files, and set the outbound cache headers to 12mo. (filenames are versioned)... and enable a decent server-side cache.

With this being rolled out, the OS and Web Server to be used are up for grabs. My default thoughts we're... well, duh Apache on Linux... but in my recent research I've read some not flattering things about Apache (when compared to other servers) (Lighttpd).

We can't be the first team to have setup a dedicated static Web Server (/pool) thus I'm hoping others have some stats to compare.

If I believe the stats I read so far (none are really unbiased 3rd party), it appears that the raw speed and ability to handle concurrent connections places the servers in this order.

  1. Cherokee
  2. Lighttpd
  3. Nginx
  4. Apache

I'm not even sure where IIS, Tomcat, Jetty, LiteSpeed, etc. fit into the rankings.

Now I realize there are other considerations (OS lock-in, $$$/licensing, ease of use & community knowledge) but outside those...


Has anyone here done any speed comparisons (e.g. with HTTP Test Tool, ApacheBench or similar) against these servers and has info they can share about which is faster at serving static content or noticed any alarming memory usage etc.?

  • Add this question to server fault. I think it fits better there. – Dave Nov 25 '10 at 20:00

I'm not sure if your performance need goes beyond apache capacities. It would be great if you have pre-defined SLA (service level agreement) for your need.

I don't know any article with the benchmark you requested (although I think you can determine your own SLA/metrics and test servers through a own test process).

Easy of use, community support and other relevant aspects... You should go first with Apache IMHO. With the proper configuration I already ran a site that supports up to 70,000 people at the SAME TIME.

If you really need go further, then you should re-think your infrastructure and maybe hire an exclusive professional in the subject (yeah, I'm supposing if you have more than 70,000 people simultaneously, you can afford one).

  • unfortunately I'm not sure what the SLA would be that I'm after as things like the cache-for-12-months headers would be rolled out as part of this plan. – scunliffe Nov 25 '10 at 20:17
  • ... 70,000 eh?! not too shabby - yeah my fear was notes like this: "I already had seen apaches killing systems because they ran out of memory into swap with only 100 parallel connections." from: lighttpd.net/story Now I don't have any proof whatsoever that this statement can be backed up, but it scared me a bit. – scunliffe Nov 25 '10 at 20:25

Here is an interesting link, "Apache 2.2+Nginx 0.8.53 VS Cherokee 1.0.9":



Web Server Performance for static content (Apache, Lighty, IIS, Cherokee, Tomcat, etc.)

This other test charts the performance of Apache 2.4, Nginx, Lighttpd, Varnish, Litespeed, and Cherokee.

  • 2
    Interesting link... I'm wondering now how I've not heard about G-WAN after seeing those stats. As always each "test" may not reflect "real-world" situations but I think I need to check out some of these other web servers for myself ;-) – scunliffe Oct 16 '12 at 13:13

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.