benchmarking mysqld + php requests / second

I'm trying to get a handle on how many requests/second my 512 Linode can handle.

I'm using apachebench to test one of my servers which is loading a phpBB service and it tends to average around 140 requests/second.

My question is, would this number scale up significantly (?linear) with the larger linode services?

1 Reply

@fiat:

I'm trying to get a handle on how many requests/second my 512 Linode can handle.

I'm using apachebench to test one of my servers which is loading a phpBB service and it tends to average around 140 requests/second.

My question is, would this number scale up significantly (?linear) with the larger linode services?

[ Edit: Oh, and it's sure as hell [i]never linear with MySQL, disk is just too much of a factor usually ]

Try it and see? :P

Seriously though, it depends a lot on what sort of access patterns you have, even what sort of data you're storing and how much of it you're hitting… In your case how much your users write vs. how many are just browsing is going to be the big issue. Disk on Linodes is shit, for want of a better word, so you're going to find disk writes to be a bottleneck even sooner than they usually are with MySQL, probably a long time before RAM/CPU are an issue.

Config plays a big role, too, of course.

Completely stock MySQL configs aren't great for VPS stuff, to be honest I'm not sure if Linode have custom configs by default? I haven't tried MySQL since joining… If they don't though, you'd probably see improvement up to about 2GB just by upgrading the node, in most use cases.

With config tweaks and appropriate use patterns, of course this can be pushed a lot lower / higher, but they're pretty specific to what you're doing in most cases.

Make sure you try memcache or some form of caching though? For a lot of typical read-heavy workloads a 256MB or 512MB with memcache can obliterate 2GB or even 4GB machines with plain MySQL…

For your forum it'll depend a lot on your user's behaviour but it's still likely to help quite a bit, even a 32MB or 64MB memcache keeping your most read threads in memory is likely to be a huge help for a busy forum… basically MySQL's built-in caching doesn't keep things as often as it could and whilst it's not as big an issue for write-heavy things like forums or chat, it still helps a lot.

Reply

Please enter an answer
Tips:

You can mention users to notify them: @username

You can use Markdown to format your question. For more examples see the Markdown Cheatsheet.

> I’m a blockquote.

I’m a blockquote.

[I'm a link] (https://www.google.com)

I'm a link

**I am bold** I am bold

*I am italicized* I am italicized

Community Code of Conduct