Custom Search

Lighttpd+Xcache+Drupal 6 = Holy !@#$

I’m absolutely stunned. On a whim (and out of boredom Smiling) I set up lighttpd on my little laptop (an AMD64 X2 with 2GB of RAM), along with XCache, and thanks to lots of digging already done by this guy (and others referenced there) I got a test Drupal site up and running, too. It took a bit of nudging here and there (disabling the CGI module so that FastCGI support can take over, so that XCache works Smiling) but it’s up and running. It’s just a wee bit … fast.

I tested the whole thing out with ab1: two hundred thousand requests total, with five hundred concurrent requests. Holy shit! Over 3,000 requests handled per second, no errors, no failures, and the longest-waiting request took a mere 650 milliseconds to finish. The notebook’s hardware never even pegged at 100% CPU utilization either. That’s just amazing. This was on a Drupal setup with few nodes but dozens of enabled modules (I basically turned on everything that Willfe.com uses) — a cute little notebook able to handle 350 million requests per day (!).

Anybody that suggests Drupal isn’t scalable hasn’t played with this setup. Obviously on small-scale deployments it doesn’t matter, but if you’re on a dedicated server and all you’re doing is running Drupal, switch to this stack fast. You just won’t have any scaling problems anymore until you have so much traffic that every day you’re making hundreds of dollars on friggin’ AdSense hits alone Smiling

Pardon me while I go find my jaw … it’s on the floor over there somewhere by the couch where I was sitting when I ran all the tests.


  1. ab is Apache Bench — a benchmarking utility that loads a given URL however many times you specify, making as many concurrent connections as you ask it to. 

Technorati Tags:Technorati Tags:

There’s two modules related

There’s two modules related to CGI — one is just called “cgi”, while the other is either “fcgi” or “fastcgi” (I’m booted off a different partition right now on the same laptop that ran these tests, so I’m not able to check at the moment).

If the “plain” CGI module is running, it’ll grab CGI requests before the FastCGI module gets a chance to play.

disabling CGI module?

what CGI module did you disable?

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Post new comment

The content of this field is kept private and will not be shown publicly.
CAPTCHA
This question is here to test whether you are a human visitor and to prevent automated spam submissions.