I’ve just spent today switching the BuddyPress testdrive site over to a new server. The site was previously running on some server space kindly donated by andrea_r.
The test site is closing in on 1,000 registered members, this is rising by around 50-75 per day. We didn’t want to jeopardize Andrea’s other sites, so decided it was best to move it.
I’ve now set the site up on its own VPS, which gives greater flexibility with the apache/php/mysql setup.
I thought I would share a trick to speed up your own WPMU installation. I’m by no means an expert in this area (at all) but this worked for me.
1. Upgrade Apache and PHP to the latest versions.
Many WHM/Cpanel enabled VPS accounts have a script called “easyapache” (usually in /scripts/easyapache). This will let you easily upgrade both Apache and PHP at once. Apache 2.2 from what I read has performance advantages over 2.0 and definitely 1.3.
2. Compile PHP with eAccelerator
If you’re using easyapache then you just need to check the box to add this to your PHP setup. If not, then follow the instructions on the eAccelerator docs. eAccelerator is essentially a caching tool that will significantly speed up PHP scripts. You can read more about it on wikipedia.
Once I had the latest Apache and PHP installed, along with eAccelerator, the generation time reported by WordPress was significantly reduced. On the old server this could be anywhere from 1-5 seconds, but with the new server and eAccelerator this was reduced to 0.1-0.8 seconds. A very significant performance improvement.
Have any performance tips you’d like to share?

Klark 6:46 pm on October 1, 2008 Permalink |
Hey Andy,
Nice work on Buddypress.
When I was setting up my site two months ago, I had installed eAccelerator like you described. But I did something extra.
I installed this plugin into /wp-content. My understanding is that this further improves performance and makes WordPress eAccelerator aware.
http://neosmart.net/dl.php?id=13
I’m new to this as well, so I’m basically learning as I go along.
ovidiu 3:18 am on October 2, 2008 Permalink |
I used that plugin as well, but I read a couple of posts stating it doesn’t work anymore with the newer aka 2.6.xx versions of wpmu.
Indeed in my cache folder, nothing was happening after upgrading wpmu.. so I had to switch to the filebased version of this plugin while still using eaccelerator which does speed up things already, I just lsot the edge of object based caching
http://neosmart.net/dl.php?id=14
Andrea 5:08 am on October 2, 2008 Permalink |
Yep, it’s getting kind of crowded on the server running more than one successful site.
I have to move some of my own stuff to their own boxes.
And I’m sure I’ll be using some of these tips. installing eaccelerator was easy – once we got past the typos.
Dr. Mike Wendell 7:21 am on October 2, 2008 Permalink |
We’re in the process of moving our mu setups onto their own rack with their own allocated boxes. We had previously put them into our regular shared hosting boxes since we only place 200-225 clients on a single box but all of the sites are growing a bit. Three (or more later on) boxes up from with the mu files and file based object cache up front, 16 addition boxes behind those for the databases and uploads. None of them are real heavy. Our largest is about 32k individual blogs that had previously been on two servers by themselves. Our *cough* adult mu installs sit on their own boxes individually since they generate a ton of bandwidth and they manage their own installs anyway.
Off loading the themes files and, later on the uploads, is something we’re looking into as well. Elad is big on this. We’ve been bugging him to work on the end user file uploads since he figured out the theme files.
We off loaded out spam solution onto another box as well. We’re running Spam Assassin on a separate box and send comment checking to that using a modified version of wp-spamassassin. We were using a donated license of Akismet but, well, let’s just say it wasn’t a solution for us or our clients. Typepad Antispam works as well but I’m sure you’ll edit out this line. Spam Karma 2 and (Oh I forget the name of the other one.) shouldn’t be running on the same box. That’s just asking for trouble and processor load.
Dealing with splogs and blocking IP addresses that continue to set up those splogs are a plus as well. Folks don’t realize how much traffic a splog can receive. Ditto on ip addresses that continue to send comment spam.
I’m sure I’m forgetting stuff. Maybe I should do this as an article myself.
ovidiu 7:39 am on October 2, 2008 Permalink |
@drmike:
I had a closer look at the plugin I mentioned for offloading upload files to S3 (http://tantannoodles.com/toolkit/wordpress-s3/), and found a sample configuration file. It seems you can pre configure the values to be used for wpmu there and that should make it run as a wpmu plugin as opposed to its normal usage under wp.