Every once in a while, a new client asks where we intend to host their website. Usually they’ve done some research, found plenty of plans under $10/mo, and maybe already signed up.
But to be frank, cheap hosting is a mistake, and we do our best to steer clients away from it. Instead we rent virtual private servers (VPSs) and insist that clients use them. Here’s why.
Cheap hosting means shared hosting. Shared hosting means you and hundreds of strangers are running software on the same computer. You have no idea who else is on your machine or what they might be doing.
This introduces a slew of risks. Shared hosts frequently report security issues and require customers to change passwords or update software. Database break-ins by unruly neighbors are often to blame.
On the other hand, private or dedicated hosting means you have the whole machine to yourself. Only the software you chose is running, and you’re the only person running it. It’s like using your home computer versus one at the library.
On shared hosting, everyone competes for resources: processor time, memory, disk throughput, bandwidth, etc. Since each machine has finite resources, the performance you expect may be sucked away by high-traffic or poorly coded sites.
But on private hosting, your server resources are guaranteed. There are upper limits (which dictate pricing), but performance-wise, you know what to expect. And should your site become a huge success, most VPS hosts let you upgrade resources instantly.
Shared hosting is designed for the masses. Only standard features are included, with default settings. You cannot change those settings on your own because that may disrupt the other people on your server. So you’re stuck with vanilla.
However, because a VPS is your machine, you can install, remove, and reconfigure whatever you want. For our clients, we make heavy use of external web services. So we don’t need to worry about things like tracking users, organizing comments, or streaming video on the server itself.
Instead we can focus resources on quickly loading frontend assets and serving cached, compressed content. The result is higher performance that can only be achieved by tweaking the server to specific needs.
Like any other skilled labor, our work depends on efficiently using a familiar set of tools — namely a LAMP stack with access to ssh, bash, svn, nano, tar, rsync, curl, crontab, screen, tail, top, dig…
Some of those tools are prohibited on shared hosting for security reasons. Yet they’re essential to the efficient operation of a remote server. And efficiency means using less of our time and our clients’ money. That’s where a VPS begins to pay for itself.
Occasionally we’ll mess up using one of those tools above. When we do, we call a number, talk to a real human being, and a team of professional server administrators helps us out right away.
It doesn’t happen often, but if it does, we know waiting 24 hours for email support is unacceptable. Unfortunately, shared hosting companies see things differently, and give you what you pay for.