Ask HN: Best Node.js hosters
For those deploying apps built with Node.js, who - in your experience - provides the "best" hosting service? By "best" I mean reliability most of all, good/fast support, reasonable pricing, and a facility to host non-node apps (such as, say, PhantomJS) alongside the main Node app. We're currently using one provider who'll remain nameless, but whose support is sketchy, provided by someone whose native language isn't English and has difficulty understanding some questions, and whose deploy cycle takes several minutes, and who suffers from periodic outages. Frustrating, and we need someome more reliable. Current candidates include Heroku, Modulus looks promising, but who else would you recommend? Thanks! I am actually pretty surprised AWS isn't on your list. I would dare say they are the most competitive on price vs features of any service out there. They have a free tier for testing your app (handy while you're migrating to a new service). They have services like Elastic Beanstalk for deployment, management, and monitoring of services at no cost above and beyond the servers and storage you already utilize. And they have more services than you can shake a stick at. Their support is top notch. I have used them to host numerous apps, including Node.js apps, and I can't speak highly enough about them. Yes, you're right. Doh! Don't know why I omitted AWS; certainly know about them. Thanks for the reminder! I'd recommend either AWS or DigitalOcean. DO is a bit cheaper and easier to get started with (thanks to a real simple interface), while AWS has a bit more to offer in terms of non-hosting services (detailed monitoring, specialized storage and DB services, email services, etc.). Both have pretty extensive resources for getting started and good support. I'm the Node platform owner at Heroku. Great timing on reliability questions - I just finished writing an incident report for Node! All apps were up, but about 44% of deploys failed for 1 hour on the 18th this month. That's the only incident report I've had to do in the past six months: Our support team is amazing; we have several node devs on the front lines and anything they're not sure about gets quickly escalated to me. One of my favorite things about Heroku is that all customers - paying or not - get real support from full-time staff with deep experience. Heroku also works great with non-node apps, as you mentioned. We have hundreds of customers running PhantomJS and doing some pretty incredible things with it (like spinning up temporary dynos to walk their content and pre-generate server-side data for client-rendered single-page apps). PHP, Java, Ruby, etc are all first-class and with official buildpacks - plus, since a buildpack is a simple bash script, you can write one for just about anything: https://github.com/hone/heroku-buildpack-jsnes The biggest reason I see folks hacking on less solid services is price. I think we could do a better job of making clear just how far you can go, for how cheap, on Heroku (I didn't realize myself until I worked here). Unverified accounts can run 5 free apps... and verified accounts can run 100! Each app gets 750 free dyno hours each month (there's only 744 hours in a month), and each dyno can handle really amazing throughput with node. To test for yourself, you can write a 'hello world' app, add the free blitz:250 addon, and then slam the app with 250 concurrent users to see how it holds up with nearly a million requests an hour (hint: linear scale without a flinch). You get free rabbitmq, mongodb, postgres, redis, https, etc. All of Toyota Europe is run on node on Heroku, and they only use a couple of dynos per country. Anyway, I'll end this novel with the conclusion I came to after seeing how the sausage is made: Heroku grows with you. It starts free and becomes cheap once you're pulling non-trivial traffic, and it surpasses everything else in terms of app (vs ops) focus. If you'd like to learn more, I'm happy to nerd out. Cheers,
Hunter Hunter,
Thank you for a most thoughtful reply. We are actually current Heroku customers, and my issue (a simple one to solve) is that our new app has the same name as our old app (which is running on Heroku now), so i wanted a different hoster - not only just to try other providers, but also to make management at our end a bit easier. As i say, an easy problem to fix. I am tempted to return to Heroku because integrating with MongoLab was just so easy and painless, and your deployment steps are so clear and easy. It's a great idea to try other providers - I run stuff on Linode and Digital Ocean myself (though I stick with Heroku for the vast majority). Let me know if there's anything I can help with re:deployment or support of node apps on our platform. In my experience, I would highly recommend Digital Ocean. Their experience is boiled down to what matters to dev's: simplicity and speed in setup. You can get started with a Droplet (what they call a dedicated virtual) for as low as 5$ a month for 512mb ram. Go check them out and let us know what you think! www.digitalocean.com Yep, DO is a contender. I like the "hands-on" aspect of their interface - a lot of control, but a little squirrely on the interface. Still, they're growing fast and clearly appeal to a lot of devs. Thanks! Check out IBM Bluemix.