I've had my website on a shared host for about three years, and its outgrown the top tier shared hosting solution. I like my current host company, but I really don't even know where to start when it comes to picking the specs of a dedicated server. I tried moving to a VPS that I thought was sufficient and it crashed and burned with my traffic in minutes. I'd rather not make that mistake again. Can anyone give me some insight into how to figure out what I need for this server or at least some general rule-of-thumb method to estimate? Here are some stats of my website: 1) It's wordpress based blog. 2) The average document size is 355kb. 3) We have a monthly average of about 120,000 uniques with 200,000 pageviews - however its growing quickly so I'd like to be capable of something closer to at least 500,000 page views. 4) At peak times there are probably about 3000 users. It isn't a forum, but just blog posts so its not extremely intensive (average user access 1.8 pages). The site is ad supported (and probably under monitized) so I'm trying to be relatively frugal. My current host offers - 2x Dual Core E5160 Woodcrest (3.0Ghz) with 2gb memory for $135/mo...which is their bottom tier and that is pretty close to my budget. So is something like that enough? Secondly, if I have to upgrade beyond that would it be better I spend extra money on upgrading to a quadcore machine or adding more RAM? As you can tell I'm something of a noob in this area so any advice is greatly appreciated.
It's so difficult to say because how your site performs depends upon the number of plug-ins being used, how well they are written, and many other factors. The number of page views and the average document size is no real indication of your hardware requirements. I've seen lower-powered servers deal with 600,000 page views per day with ease while more powerful one struggle to serve 75,000 page views per day. It's down to the programming more than the number of pageviews. If your site worked on their shared hosting servers then I'd find out what the spec of them was to get an idea of what sort of spec if required to run the site easily. It would also help if you told us the spec of the VPS you had - the one that crashed and burned - so you have a baseline that you must exceed. If you're driven purely by price then it probably isn't going to be the best solution you come up with. What's important here is to get an idea about the specification you need then do what you can to meet the budget required. This is even more important if your looking to more than double your traffic. Here's some guidelines. 1. The Woodcrest is a pretty old CPU now. If your budget can stretch, go for quad-core Westmere CPUs. 2. 2GB is not a lot of RAM. RAM is so cheap, and prices are still dropping, so you want to get as much as possible. If you get a Westmere CPU then 6GB of 12GB would be a minimum per CPU. 3. You're making the classic mistake of focussing on CPU and RAM when the disk subsystem is probably going to be one of the most critical parts of your server set-up, and definitely the limiting factor for a DB driven site with that many page views. You're better getting more and faster drives than attempting 1 huge drive. Go for RAID 10 if you can (4 drives min) or RAID 5 (3 drives min) if it's mostly reads. Only you can decide what to go for, but if you don't get a decent specification now then your site will continue to struggle and it will not be capable of growing.
Thanks RonBrown, that is exactly the kind of advice I needed. It turns out that I've found that my site is running really inefficiently due to using timthumb, so I may be less resource intensive than I originally thought. I never even considering the hard drive issue, but I can definitely say we are database intensive enough that I imagine a RAID 10 would be a huge help. This is definitely something for me to go on, and I think I can clean up my programming (especially fixing timthumb caching) and maybe get what I need out of one of the budget servers. Thanks.
It will be always a good way to know how knowledgeable support of the company you are dealing with.. try to ask them to solve the problem you faced.