Adopting Node.js as a technology choice for enterprises has been growing exponentially since the past three years thanks to its tremendously rising popularity since 2011.
Here is the snapshot from the Google Trends:
Industry leaders like Walmart and PayPal are achieving a competitive edge and gaining performance optimizations by developing Node.js applications. Node is considered as a well-suited technology for enterprise applications because unlike traditional development methods, Node.js composes applications from small modules which are connected together. Using Node.js, organizations can develop a group of small applications instead of one large application therefore in case there are changes to be made or any new functionality has to be added, the entire code-base can be modified.
Certain benefits in a precise way are mentioned here:
- Rapid-Innovation and Delivery
- Happy Developers and Talent Retention
- High performance within high-transaction environments
- Simplified maintenance and modification
- Increased Productivity and Effectiveness
- Node.js is a politically neutral language
- Node.js offers speed and a nonblocking I/O AP
- Node.js is ready for enterprise deployment
A- Business Benefits of Node.js
1: Rapid-Innovation and Delivery
With the increase of competition among companies, the speed of delivery and ability to iterate are some key attributes of market leaders. Such competitive scenario demands instant reaction to end user needs, incorporating user feedback and hence updating the desired changes regularly.
2: Happy Developers and Talent Retention
Of course, you can do anything with Java, but one cannot deny from the fact that best developers like to work with new and interesting technologies therefore with Node.js applications expression of ideas comes in a much better way. Hiring top talent and good developers is extremely difficult and enthusiastic developers means a fresh demand of better software.
3: High performance within high-transaction environments
Some market leaders like PayPal, Groupon, WalMart Labs experienced great benefits from Node.js application implementation.
PayPal experienced double the number of request per-second and reduce response time by 35%.
WalMart Labs put all of their mobile traffic through Node.js on black Friday in the year 2013, which was the busiest shopping period of the year. Similarly, such success stories happened with Groupon and LinkedIn where they re-implemented their system in Node.js.
Groupon re-implemented their system in Node.js which helped them in dropping the page load time by a whopping 50%. LinkedIn moved to Node.js from Rails for their mobile traffic whereby reducing the number of servers from 30 to 3 and the new system was up to 20x faster.
4: Simplified maintenance and modification
With time traditional monolithic applications have become rigid and quite difficult to adapt as the new requirements are added.
Writing applications in Node means that applications are composed from small modules which are bind together.
Node.js allows development of small applications instead of one large application which enables changes or new functionality to be added deep inside the entire code-base.
5: Increased Productivity and Effectiveness
Success Story: PayPal experienced increase in productivity in less time when they chose Node.js over Java.
6: Node.js is a politically neutral language
7: Node.js offers speed and a non-blocking I/O API
Concurrency is difficult in many server-side programming languages which often leads to poor performance. Node.js overcomes all such issues. Node.js for enterprise application development provides an event-driven architecture which optimizes application’s throughput and scalability. A simple code written by developers can be easily captured by Node.js. Instead of processes or threads, Node.js uses event loop. Callbacks are defined and the server automatically enters the event loop at the end of callback definition. And Node.js exits the event loop if there are no callbacks to be performed.
8: Node.js is ready for enterprise deployment
Node.js for enterprise applications, holds a good reputation of being secure, well-scaled and easy to learn therefore it appeals to a large set of communities. There are many well-known establishments who are reaping benefits of Node.js which includes PayPal, LinkedIn, Netflix and much more.
— CSSChopper (@CSSCHOPPER) July 20, 2016
Advantages of using Node.js for enterprises:
- 1: Node.js makes development faster and increases the productivity of teams. The great credit goes to NPM which has a large set of modules that can be used instantly.
- 2: High scalability of Node allow you to spend quiet less time on infrastructure, as you can handle the same amount of load with less hardware.
- 3: Node.js promises a deep-rooted long term support plan which ensures that each release is going to be maintained for 30 months.
While we are saying that Node.js is enterprise ready, we are not just highlighting the advantages of Node.js, but here we have summarized what market leaders and developers have to say in regard of Node.js.
B: Straight From Success Diaries
B1: Dow Jones Benefits By Node.js
The newly appointed CTO was overwhelmed about the success achieved using node.js, therefore he pushed management to support it and soon announced Node as their primary technology at Dow Jones. At Dow Jones, today most of the products are Node.js based especially the consumer side products.
B2: Uber Runs on Node.js
Let’s take a stroll at latest NodeConf talk in December 2015 where Tom Croucher – Senior Site Reliability Engineer at Uber Technologies, has something delightful to share.
Most of the development in Uber was done in Node 0.8. Then they moved to Node 0.10 in six months. According to Tom, node 0.10 is super stable and works well. Technologists say that heart of 15 billion dollar business is written as server-side Node. Reliable distributed systems with replication and geospatial databases are written in Node. Well…
B3: World of High Speed and Good Volume for GoDaddy
A narration of the story by Stephen Comissio, senior (ex) .NET developer in which he explained what made them switch to Node.js. and how it benefited the company.
So, finally let’s know what made them switch to Node.js:
- Node allows easy building applications with high confidence in build quality
- Unit testing is easier in Node.js
- Integration testing is also simplified
- REST is simplified and deployments are easier.
During the ‘Puppet Master’ SuperBowl ad in 2014, GoDaddy faces biggest scaling challenges. They aimed at 100 million people as viewers to visit a website, made by one of their customers with their Website Builder app. During that time GoDaddy’s infrastructure handled 13.000 RPS’ with ~87ms TTFB (Time To First Byte) on an average day. But this was not enough and they had to think bigger and better both. They estimated that website alone has to handle 10.000 requests per second. In order to support such huge amount of traffic the site would require manual migration to its own cluster which must comprise of 12 servers, but they were succeeded.
According to Stephen, GoDaddy now can handle the same load with only 10% of the hardware than before using Node.js. They succeeded in fewer server management. They were able to serve 1.7 million requests per month and survived DDOS attacks with basically zero impact by using Node.js. Node.js has been boon to GoDaddy in terms of talents acquisition. They firmly believe that Node allowed the increasing number of downloads, high number of enterprise adoption and contributed to the massive growth of startups.
B4: Increased Productivity of PayPal with Node.js
Sameera Rao, Sr. Business Products Engineering Manager, before joining PayPal in 2012 was associated with a startup which deals with microservices and Node.js. Going back in time, he says that PayPal’s architecture was monolithic, so practically there was only one app which had everything which includes controllers, UI and cohesive call to the API for all the operations. There was a lot of redundancy happening like teams copy-pasted code, tweaking needed for a particular country and then rolling out another application. He adds “From engineering perspective, it was like an assembly line”.
PayPal managed to move old architecture and mindset to the new service-oriented framework. They scaled Node.js and Kraken.js for a global organization with multiple teams working on the same project. Conclusively, Node gave for them the ability to modularize every piece of the stack hence global teams were able to roll out experiences in a much quicker way.
B5: World of Wonders for Netflix Using Node.js
Director of UI platform engineering at Netflix, Kim Trott, told the story of Node.js at the latest Node Summit in Portland.
The tale started in 2013 when Netflix was not using Node.js in production at all. A large legacy application with 40 minute startup times, with running monolithic application, slow builds and huge developer machines. This affected the ability to be more productive and innovate rapidly. Even they were not able to build out A/B testing effectively enough, which was very much crucial since Netflix is constantly doing 100’s of A/B tests simultaneously.
They were simply looking for single rendering layer where developers just have to worry about routing, viewing of templates and sending data to the templates. Netflix also wanted to move the website to single page application instead of rendering each page fully.
So, now Netflix is running more as a single page application, and with a rich user experience. Now Node.js is used on the entire website. More than 30% of the Netflix team is working on Node in production. Technologists at Netflix says that “you can go from 0 to 60 with Node really fast, so you can get something going really quickly.”
C: The Future Of Node.js Is Bright
Node.js for enterprise applications fits the enterprise world and can be adopted successfully with great benefits. On NodeDay, Eran Hammer has announced that WalMart is planning to use Node.js across almost all e-Commerce by the end of 2014.
PayPal is also rolling out Node.js across their entire web application and hence Node.js will be used almost everywhere within 2 years.
New Entrants such as Netflix uses Node.js for enterprise application development and others are even showing that there is a big growth happening in this area at present.
References: nearform.com, risingstack.com, infoworld.com, persistent.com, progress.de