One BIG Server or Multiple Servers?

trizz

Active member
Doing some hardware migrations relatively soon, and am looking at either deploying one BIG box (multiple SSDs, 128g/memory, 2xE5 CPUs) to host both web+DB or multiple smaller servers (32gig memory, single E5v3 CPU, SSD) to host web and DB independently.

Should I go with one big honking box, fronted with cloud flare? Or a dedicated box just for DB, 2 boxes just for web, and front that with cloud flare?

Stats - 500-2000 users online at a given time.
 
One big box is probably the easiest but personally, I would consider putting the DB on it's own server when factoring in the DBs growth at that many users online at once.

How did you decide on the setup of smaller multiple servers? They wouldn't have to match identically in hardware as they will be doing different jobs so it might be best to allocate more to the DB server. But this depends entirely on your needs / knowing more about your current setup.
 
I've 3 servers, 2db and one php.

The 2nd db is replication for backup without upsetting the master.

The front facing server that has php needs enough memory to run x threads at 256mb

So 10 threads requires 2.5gb of ram
 
I've 3 servers, 2db and one php.

The 2nd db is replication for backup without upsetting the master.

The front facing server that has php needs enough memory to run x threads at 256mb

So 10 threads requires 2.5gb of ram

how active is your community?
 
One big box is probably the easiest but personally, I would consider putting the DB on it's own server when factoring in the DBs growth at that many users online at once.

How did you decide on the setup of smaller multiple servers? They wouldn't have to match identically in hardware as they will be doing different jobs so it might be best to allocate more to the DB server. But this depends entirely on your needs / knowing more about your current setup.

great question - initially was looking at just memory+CPU footprint for web frontend boxes versus a ton of memory+fast SSD disks for the DB box.

2-3 boxes with 32gig of memory for http only frontends should be plenty, along with a box dedicated to DB if i go that route.
 
how active is your community?

It would be around the 1500 all users active at peek time. (members, guests, robots).

I am working hard on increasing that activity but the biggest month is always January and this time of year is not as busy.
 
Stats - 500-2000 users online at a given time.
single properly configured and optimised server should be able to handle that. I have a client with 5+ million posts and 2,500+ users average on XF on a single server and even that only using around 20-25% of cpu normally and more at time of backups (as expected due to multi-threaded backup and compression in use). But sizing and configuring a server really depends on your web app(s) usage requirements at peak and not just their averages.
 
Why not multiple drives and a raid 10?
Because raid isn't backup.

And you still have to do mysqldump which freezes the site for the 5-10 min it does backup. So do it on the replication server.

Also if one of the 2 servers die, you can move around to the spare.
 
I would echo the first reply. For ease of use, 1 server. For future expansion, multiple servers.
 
single properly configured and optimised server should be able to handle that. I have a client with 5+ million posts and 2,500+ users average on XF on a single server and even that only using around 20-25% of cpu normally and more at time of backups (as expected due to multi-threaded backup and compression in use). But sizing and configuring a server really depends on your web app(s) usage requirements at peak and not just their averages.
Good single-thread performance matter for XenForo. Especially if your usebase (ab)use's complex bbcode.
 
It would be around the 1500 all users active at peek time. (members, guests, robots).
We typically have about 1500 - 2000 online most of the times; and we do just fine with just 8GB box. The server does just fine even with 5000 of them online.
 
We typically have about 1500 - 2000 online most of the times; and we do just fine with just 8GB box. The server does just fine even with 5000 of them online.
It's probably excess due to the vbulletin days.

I am looking to reduce server costs. But would still keep the 3 server layout.
 
Because raid isn't backup.

And you still have to do mysqldump which freezes the site for the 5-10 min it does backup. So do it on the replication server.

Also if one of the 2 servers die, you can move around to the spare.
Cheapest and easiest solution setup automated backups to trigger a maintenance page to close off your forums for the length of time it takes to backup your forums. Big banks and other commercial institutions implement maintenance times, why not for forums :) This is where sizing your server for peak usage/task loads helps. i.e. If you can get 30GB database to backup in 2 minutes, you only need a maintenance page to last for 3-5 minutes at most :)

Cheaper than raid or replication = saving your $100s of dollars per month :D

Centmin Mod 123.09beta01 beta has such a feature built in if folks want to enable it https://community.centminmod.com/threads/sitestatus-maintenance-mode.5599/ :)

demo'd

centminmod-sitestatus-01.gif

FYI, 5-6GB database on a properly configured and sized server shouldn't take more than 20-60 seconds to backup.
 
Last edited:
Dedicated MySql server is easier to maintain and your site is less prone to "accidents" and more importantly more secure. I'd go with that if I were you:
4GB Mysql
2GB web server (nginx preferably)
 
Top Bottom