High Uptime Web Hosting

This section of the web site offers recommendations on software and services to provide bullet-proof web hosting for yourself and others at a very affordable price.

How I Host Web Sites

After at least a dozen years going through countless traditional Shared web hosting services, I just could not get the kind of 24/7 minute by minute uptime that I was used to in Corporate Data Centres.  I tried everything from the cheapest Personal/Starter service to heavy duty Reseller service and high reliability Business and Failover services.  Before trying two different pre-configured Virtual Private Server (VPS) solutions, both of which ended with major failures that the Support staff of the two major hosting companies were clearly ill-equipped to remedy.

At the beginning of 2012, I was still convinced that the VPS concept had merit but realized that I had to build and support the software stack myself.  Since then, the 20 or so web sites that I host for myself and others have been running on linode.com.  At Linode, you install and support all of the software yourself.  In turn, they provide a very reliable VPS instance, which takes away 99% of the doubt I have previously experienced with web hosting issues as to just where the problem lies.

The Software Stack

Here is the system software stack that works for me.

  • Ubuntu 12.04 LTS – a full feature Linux offering
  • LAMP – Apache, MySQL, PHP
  • Nagios
  • phpMyAdmin
  • apticron – daily check for Ubuntu updates, with e-mail notification

Major application software:

  • WordPress – for traditional web sites, not blogs
  • phpBB – discussion forum

Required Tuning

Apache and, to some extent, MySQL are notorious for their huge memory requirements.  This puts them in direct conflict with commercial VPS services which are priced based on the maximum amount of available memory (RAM) that they provide.  Though most provide a bit of protection with a Swap area on disk.

The key parameter is MaxClients in Apache.  I currently have it set to 15 and have no problem running 20 web sites on a VPS with 512MB of RAM.

A good place to start is to follow the Low Memory Settings for Apache 2 and MySQL listed here:  http://library.linode.com/troubleshooting/memory-networking

{ much more to come }