Despite being a recent technology, it is used by large companies such as Uber, Netflix, LinkedIn, Nasa, Walmart and many others. With the adhesion of these large companies, the use of Node.js in the community has become routine.
One of the main reasons for its adoption is its high scalability. Their architecture, flexibility and low cost make them ideal for micro services and server less architecture implementations. With this, it is very common to see new companies decide to use Node.js, so the demand for developers who know the technology has increased day by day.
1. Widely used by large companies and new startups
As I said before, large companies and the community have adopted this technology for new projects, and as Node.js is an open-source project it has several contributors around the world, this brings many benefits because these people are always contributing to evolution. Of this technology, Node.js is maintained by the Node.js Foundation, bringing more reliability to it.
In addition to being a strategic decision, as there are many companies using Node.js, naturally many business opportunities arise.
2. Non-blocking I/O (Event Loop)
Node.js works with a non-blocking I/O model, where only one thread is responsible for handling requests. This thread is called an Event Loop where each request is treated as an event, the Event Loop is running waiting for new events to be handled, and with each new request a new event is created.
When working with Node.js we need to think of an event-driven approach, the developer needs to know the events that will be emitted at different times of execution and know how to listen to these events to perform the necessary operations, resources in Node.js and also in the most libraries made for it adopt an unobtrusive pattern of writing code, that is, when you need to do some heavy task like reading a file, writing something to disk or accessing a database everything will be done asynchronously by default.
3. Performance and productivity
In 2012 Linkedin presented the change from Ruby On Rail to Node.js, here is the result:
- Much more performance, running up to 20x faster in some cases;
- Went from 30 to 3 servers
- They were able to combine the backend, frontend and mobile teams
Another very famous case is Paypal, where they switched from Java to Node.js and got very interesting results too:
- Double productivity
- 33% fewer lines of code
- 40% fewer files used
5. Active community
One of the most positive points about Node.js and positive point in your choice here at ez. There are hundreds of communities around the world working to make Node.js one of the main technologies in the development ecosystem.
It is very easy to find posts, tutorials, lectures and modules (NPM) for Node.js, with this, developing in technology becomes much easier.