Why? Well, first, because Node.js allows for fast development, which increases productivity. Indeed, according toa Medium post by RisingStack, “When PayPal started using Node.js, they reported a 2x increase in productivity compared to the previous Java stack.” We think you’ll agree that’s pretty darn impressive.
But there’s more. Node.js also has high-scalability, meaning that you spend less on infrastructure as less hardware is needed to handle the same amount of load. Its also gives you an access to the jam-packed and ever-growing NPM (Node Package Manager), which is robust, super-speedy, and has enjoyed a rapid increase in the number of modules, which has put it pretty much on a par with theRoR (Ruby on Rails) platform.
Indeed, you may have already downloaded and installed Node.js to test your code out. Things are looking good, and so the next stage is to reveal your application to the world, which means that you need to look for some Node.js hosting.
But, where to start your search for the best Node.js hosting?
We’ve put together a list of the top 8 Node.js hosting services – some free, some paid, some mixed – to help you make the right choice. Below, you’ll find a brief description of each service, plus the pros and cons to help you weigh up the benefits and possible detriments.
Top 8 Node.js Hosting Services
Amazon Web Services
Amazon Web Services (AWS) allows you to deploy a high-availability Node.js web application using the AWS Elastic Beanstalk service. This is a container system that makes it extremely easy to push packaged applications to AWS as Platform as a Service (PaaS). You have full control over the server on which your Node.js application is run, and indeed you can also run multiple applications on the server without incurring any additional costs.
Pros: Great pricing, plus ample support in the form of forums, plans and documentation.
Cons: Quite a steep learning curve when it comes to AWS, especially for those who have never used it before, and even more so for those who have never been responsible for the administration of their own server before.
Initially only supporting Ruby on Rails,Heroku has since added support for a wide range of languages and environments including Perl, Python, PHP, Java and of course Node.js. Owned by Salesforce.com, Heroku also offers seamless integration with a host of third-party services (such as SendGrid and Redis) and supports deployment across multiple regions.
Pros: Heroku offersa free tier and is very easy to get started with (even for novice developers). There’s great support documentation freely available, and an extensive list of plugins and services that can be added instantly.
Cons: Once you leave the free tier, Heroku does start getting pretty expensive pretty quickly. Also, while starting with Heroku is fast, larger applications tend to lead to slower deployments.
With a super-intuitive user interface, powerful command line and REST API for robust deployment,AppFog has an awful lot going for it. The PaaS offering allows you to host your Node.js applications in the cloud easily, with relatively quick deployment and automatic scalability.
Pros: AppFog offersround-the-clock professional live-chat support for all users, and has a simple command line utility. Free tier for 2GB of memory and 100MB of storage.
Cons: Although the deployment process is generally simple with AppFog, the downside is that it’s not always as quick as many would like. While this is fine if you’re just deploying once a day or week, for more regular deployments you might want a bit more speed.
Microsoft Azure is Microsoft’s cloud-based platform that lets developers rapidly build, deploy and manage powerful websites and web apps. This is a reliable platform with great flexibility and high-availability across multiple regions. With support for both Windows and Linux machines, you are able to monitor all of your Node.js applications hosted on Azure in real-time, with automatic scalability supported.
Pros: A good free plan which allows you to host up to 10 apps on each datacentre. It’s also super-easy to scale your Node.js app up or down in Azure or simply enable autoscaling to allow Azure to scale in accordance with traffic.
Cons: Deployments can be slow, and there’s no way to deploy to an Azure cloud service from a Mac.
A firm favourite amongst first-time developers, RedHat Openshift, offers Node.js hosting absolutely free forever – that’s no free-trial period, just free. The Platform as a Service option enables no-fuss cloud hosting, allowing you to focus entirely on improving your applications.
Pros: OpenShift is another platform which supports automatic scaling, so if your app receives an unexpected spike in traffic, you’re covered. Multiple region support and free access to built-in private databases.
Cons: Although the hosting is free, you are limited to three applications.
With round-the-clock support,EngineYard is a great hosting service for Node.js applications. Indeed, the support system at EngineYard is what sets this Platform as a Service company apart. Great documentation – including FAQs, walkthroughs and tutorials – you can also gain access to email support, and even dedicated service teams when you choose the managed tier.
Pros: Aside from the superlative support on offer, EngineYard also offers simple deployment and is indeed a functional and powerful platform by many standards.
Cons: Options for databases are, to a certain degree, somewhat limited with EngineYard, and, since it doesn’t offer custom instance role definitions, some flexibility is lacking.
Xervo (Formerly Modulus)
Known as Modulus until January 2017,Xervo is a highly secure and cost-effective PaaS hosting environment, favoured by many. Offering unlimited storage for your Node.js projects, Xervo is highly flexible and has full support for autoscaling and automatic load balancing. In addition, developers particularly like Xervo for its powerful tracking capabilities, which result in highly-detailed and actionable sets of analytics.
Pros: Great support options – including email, Twitter and even the good old-fashioned phone line – with quick-response times. Multi-region support also comes with Xervo.
Cons: Depending on the size of the project, the deployment process can be slow.
Offering both IaaS (Infrastructure as a Service) as well as PaaS,Joyent is an official corporate sponsor of Node.js. Particularly suited to large enterprises (it works with many Fortune 100 companies), Joyent assists developers in the designing, deploying and debugging of Node.js applications.
Pros: Following a free-trial, the per-minute pay-as-you-go pricing structure ensures that you only pay for what you use. Joyent’s container-native infrastructure also means that as much as 50% less compute capacity is needed. Great support programs are also offered.
Cons: Perhaps not best suited to smaller players or first-timers.
What great Node.js hosting services have we missed off this list? Did your favourite not get a mention? Tell us about it in the comments below.