There has been a lot of activity lately on the Drupal Consulting mailing list to do with scaling and optimizing Drupal. We often work on sites that need to handle a few hundred thousand visitors a month. I find that there are a few things that must be implemented as the basis of a scalable Drupal foundation:
1) Enable APC caching: This is a much simpler implementation than the MemCache set up, and most developers with intermediate PHP experience can implement it;
2) Enable MemCache: This may be more challenging to implement, but is also found to be more effective than APC;
3) Indexing Table Columns: This will allow the SQL joint queries to run more efficiently;
4) Ensure that SQL queries are optimized: For example, making certain that only the necessary fields are selected instead of using SELECT *.
This is only a basic list of options to optimize Drupal. There is much more to it in terms of server configuration to make a Druapl site scalable. Scaling Drupal is a relatively specialized field, and there are only a handful of firms that I know of that specialize in doing this:
I am sure that there are other firms out there that specialize in Drupal scalability consulting. Please feel free to add your company link in the comments below.

Comments
I have been developing Storage API (http://drupal.org/project/storage_api) which is a highly scalable and redundant file storage and serving system.
It isn't documented yet, but there is a summary at http://bluedroplet.com/
We host a lot of sites that require high scalability. We can evaluate and make recommendations for hosting.
This is really cool. I didnt know that you guys provide hosting services before.
You might consider trying APC instead of memcache for object level caching, it's must faster. The only real drawback is that it won't work well with clustered web heads.
You'll need the cache router module for that.
I take it MemCache is a real bitch to install, as I cannot get APC to work on a Windows 2003 server. Would be grateful for any clues - latest hunch is that APC is not compatible with Zend. If that's the case how is Zend disabled? Or would I be opening another can of worms?
So far #googlefail on a helpful solution. I really want to see if APC really makes a difference. Thanks for the post BTW
Post new comment