July 14, 2011

How to find the Perfect Web Hosting

Problem:
As a developer, sometimes it is hard to know which hosting companies to trust. We are compelled to read reviews (which might be biased or bought) to try and figure out what people are thinking. It may sometimes only seem helpful to only look at the bad reviews. Obviously this has it's downfalls, so how do you do it?

How do you know which hosting company to trust?

Solution:
No hosting company can give you 100% up-time guarantee and some hosting companies will have more problems than others. Remember, I'm not a hosting expert, but the following is what I've found over time.

Things to consider:
  1. How much work am I willing / able to do for a web server?
    • You can choose to manage your server yourself or have someone else manage it although if you don't feel comfortable doing so, there is an in between option. VPS is a virtual private server. This means that you physically share the same box (and some resources) as someone else, but that you have full control of your operating system and the programs installed.
  2. Do I need a Dedicated, Collocated, Cloud, or VPS server?
    •  These server types will cost more than shared hosting. In all three cases, you will have to consider security.
      • Collocation [~$40 / month + server cost]: Your required to buy your own server and find a data center to host it. If something goes wrong that you can't fix remotely, you have to gain physical access to the box to service it.
      • Dedicated [~$70 / month starting]: This allows you to put the strain of physical hardware maintenance in someone else's care; for a price. 
      • VPS [~$20 / month starting]: This is similar to dedicated hosting except that you share some resources with other hosting clients. Now days you will be guaranteed a certain amount of RAM, CPU priority, and disk space, but generally you all share the same motherboard. This means if another user is writing/reading files a lot, you could see slow down with your service.
      • Cloud [~$100 / month]: Often used as a buzz word to charge more, this is similar to a VPS. The difference with real cloud hosting is that you generally have redundancy, high availability, and rapid scaling when you need more or less resources. Because of the distribution of redundancy It's also generally able to respond quicker than a single location web site because of the redundancy in different states/counties/etc. Redundancy can be applied in any of the above options with fail overs using load balancers.
    • If your starting out and you don't have big requirements, I strongly suggest you go with Shared Hosting. You can always change over later (and most likely will change no matter where you start). 
    • If your ready to move away from Shared Hosting and you don't need the extra benefits of cloud hosting, I would suggest VPS or Dedicated hosting solutions. This allows you to save on costs now. Remember, if you don't choose to add redundancy and your server has problems, your web site will be down. Dedicated is nice if you want to guarantee 100% of the machine's resources.
  3. Is shared hosting (or reseller hosting) too insecure?
    • Shared hosting provides a good sandbox environment that allows you to have control over your website, email, and domains (if you host your domains here). They generally provide a control panel which is great for those who don't feel comfortable with managing their web server themselves.
Web Hosting I Recommend:
Full Disclosure: While my primary concern of this post is to be completely honest about my experiences and educate, some of the links to hosts above have commission tracking codes attached. If you use the links posted above to sign-up with any of these companies, I may benefit from it (and Thank You if you do!)