When I began this thread, I thought my problem was a server that was experiencing some intermittent issues. That turned out not to be the case and I lost 4 sites, my svn repository, and a couple of days' email. Well... because email servers try hard to deliver the mail, I probably didn't lose any mail but here's what I came up with:
Traditional shared hosting is suboptimal because it leaves a lot of random decisions in the hands of (probably) well-intentioned developers who don't realize the repercussions of their decisions. For example, a site that is serving 3000 pages/hour probably can get by with a single instance of Mongrel instead of a cluster. Why is this a good idea? Because you save the memory of one or more extra Mongrels and the database connection each has to keep. The same is true for lighty, by the way. Each fcgi has a cost and a database connection. On a shared host, you have no idea how your own usage impacts the rest of the machine so you just party on. Probably not the way you would behave if you really could do a free -m and find out what kind of memory usage you are responsible for.
Container-based shared hosting is better because it guarantees you a certain amount of memory and slaps you on the wrist if you exceed it. This would be Media Temple and the like. You buy a container and off you go.
VPS is an interesting alternative, and as I said earlier in this thread, it's the one I chose. Being able to log in as root may put me in a fool's paradise, but if something screws up, I know exactly who did it and why. I'm a big fan of letting developers develop and sysadmins sysadmin, but getting into the other role for just a bit really helps make me think about the code I'm deploying.
I decided on RimuHosting because they've gotten many good comments in the past. In two days, I had configured my three domains, a subdomain, WebDAV svn, and email. I've dialed back a lot of what runs by default, installed a few RPMs and basically gotten things to a baseline level. It's too early to issue a report card on this, but initial impressions are:
- RimuHosting are not hands-off. They really will dive in and help when you have a question. Pretty much whatever day or time you have a question. So their reputation for customer service appears to be well deserved.
- Uptime is 100% right now. Nothing has gagged, spit up chunks, or made any awful gurgling noises. I've even mixed a PHP app (Wordpress blog) in and upgraded to PHP5 without anything more than a graceful restart.
- I have pound installed, but am not experiencing sufficient load to want to cluster the servers just yet.
The price is several times what you might expect from a shared host but I feel much more in control of this. If this pans out as I hope, I'll begin moving larger client sites over to VPSs because I feel pretty snakebit on shared hosting right now.