[wp-hackers] Stress testing WordPress
Brian Layman
wp-hackers at thecodecave.com
Tue Jun 19 22:21:29 UTC 2012
Random ramblings inspired by your question:
Generally speaking, the numbers you are quoting don't sound like a huge
problem and of course that all depends upon what all the server is doing
and how you've configured it and the network connecting it to the
Internet backbone. The price of the server doesn't tell us much since a
$10K server bought last month would work better than a $10K server
bought 4 years ago. Regardless of your hardware, you can do a lot of
things to take the greatest advantage of what you have.
You'll want to watch for the bottlenecks in your system on an on-going
basis. Make sure you have a gigabit network card so that you can feed
data out of the machine fast enough. Make sure that you have a
persistent cache installed so that your CPU is not taxed (on Windows
consider Couchbase - a drop in memcache replacement
http://www.couchbase.com/couchbase-server/overview). This means doing
object caching, page caching and even manual piecemeal caching of
appropriate sections of your theme. Look at what you can do do reduce
the load on hard drives and network created by static files (use a CDN -
amazon or even Cloudflare maybe). The biggest thing you need to watch
for is your plugins causing writes to the database or file system upon
page load. Avoid that at all costs as writing creates a change in the
physical world and between that and file system locks, that is where
your load time will be spent.
Also you've said that you are locked into IIS. I wouldn't look at this
right way, but you may not be as locked in as you think. You may have
ASP requirements outside of WordPress, but that doesn't mean you can't
serve the WordPress site (and all static files) via NginX and send all
remaining traffic over to an instance IIS that is running on the same
server but listening from a different port. After all, if you've ever
installed Nginx with fastcgi, that's all you're doing with your PHP
traffic. You are just proxying it to a different server running on the
same machine. I imagine nginx could send all traffic for the IIS sites
over to IIS running on port 8080 and if Nginx is more efficient on that
machine than IIS, that may be something you want to consider
eventually. (And if you ever want to just play with Nginx on a windows
system, here is a maintained binary install for local Nginx dev
testing.. http://winginx.com/
Brian Layman
More information about the wp-hackers
mailing list