Ask HN: Looking for hosting resources. Best practices.. etc
I'm in the process of researching for a move from some older expensive dedicated servers and I only seem to be finding entry level questions on StackOverflow and spam or half answers on Google.
A lot of what I found is directed at people just starting a site or just learning. Anyone have suggestions for resources on hosting mid/small site?
We are low traffic but burst to 50,000 visits a day multiple times a month. Our main users table is well over a million rows.
Heroku is awesome but I still have to host the db somewhere and pay extra for ssl and email. Linode or Slicehost VPS looks great as well. Is a VPS enough to handle a database and a site? What happens when you need to scale and load balance?
Any advice would be great. I feel like I'm more comfortable with code rather then admin stuff as I get to practice the coding a ton. How do I build my admin knowledge base?
20 comments
[ 3.3 ms ] story [ 59.8 ms ] threadThe site is RoR and while doesn't have performance "problems", it is slower then I would like.
Do the math on owning vs. buying; even if you have to hire a $100/hr hardware guy (that's above market for a hardware guy) to jack with stuff every now and again, you are saving some serious coin.
I'm the only tech guy and am basically already on call 24/7 for the software side of things. Being the only one responsible for hardware as well is not appealing.
Personally, I think the optimal situation is running mostly on co-located hardware then have cold spares on ec2 or the like that you spin up once a week to test, that you can bring on in case of hardware failure of your primary system, or in case of load spikes.
Of course, depending on your time value, often times at $1000/month you aren't saving enough to justify the two provider setup... and ec2 will be able to get you another unit faster than anyone else will, if your primary fails.
The thing to remember about "the cloud" as implemented by ec2 or the vps providers is that recovery from hardware failure is a problem you still need to solve; In many cases you'll see problems with your ec2 instance, and you'll have to kill it and bring up your stuff on another ec2 instance.
Instant provisioning is a powerful tool, but it doesn't completely remove you from worrying about hardware.
This is the value proposition of something like Heroku or engine yard. they handle more of the sysadmin stuff that you would otherwise have to worry about if you were running on ec2. It can be a big win in some cases; but keep in mind... they are charging you a premium for that service.
Heroku is really tempting me, but as you say they are charging me for it. $100 a month for SSL, another $100 for email delivery and then add on background tasks.. etc..
eh, my experience is that actually touching the hardware is a very small part of the hardware janitor job. the hard part, in my experience, is figuring out when it's a software problem vs. when you need to go swap that motherboard.
This is why I build all my servers rather than going dell and buying a service contract... at least on the affordable service contracts, sure, they will swap out the motherboard if you can prove that's the problem, but if it's an intermittent problem, you are going to have to work damn hard to get them to do the swap. (to be clear, dell is fine when the problem is obvious.) To me, the actual hands-on-the-hardware part is trivial when compared to the effort required to track down an intermittent problem.
I mean, on ec2 they won't troubleshoot intermittent hardware problems for you, but at least you can shoot the node and bring it up on fresh hardware without arguing with anyone. (I have some... anger issues left over from dealing with dell support. )
I think shared/managed hosting like that is a good thing if (and only if) you can easily move away from it if it gets too expensive or if the service degrades, etc...
you are giving up a whole lot of control by using a shared host... and yeah, you get a lot of convenience in return. Really, that's what you are paying for. But you always need to know you can take your stuff and leave if they stop meeting your needs.
They have a clearance section where you can get some really good deals
Disclaimer : I know a few ppl who work there but I don't gain anything from "advertising" them.
For general admin information, http://library.linode.com is a pretty good resource. One tip on using a VPS, if you aren't interested in expending extra effort as a sysadmin, is to get a Xen-based VPS (not OpenVZ). Linode is a popular choice around HN.
Be aware that using Amazon EC2 brings its own unique set of sysadmin challenges. It sounds like EngineYard might fit what you're looking for.
Also, take a look at Hetzner - http://www.hetzner.de/en/ for dedicated servers at dan order of magnitude less expense than you are currently paying.
Cheap and no setup cost: http://www.hetzner.de/en/hosting/produktmatrix/rootserver-pr...
Powerful but with setup cost: http://www.hetzner.de/en/hosting/produktmatrix/rootserver-pr...
For VPS you cannot go wrong with linode.
"Our unique multi-machine load balancing solution allows you to manage your account on multiple machines from our control panel. You can easily deploy your apps on multiple machines and our system will automatically provide load-balancing between these machines. Some customers have scaled up their sites to tens of machines for a fraction of the price of dedicated servers."
http://www.webfaction.com/