Node.js, When to use?

Node.js is a command-line tool that can be run as a normal web server and it lets one run JavaScript programs. It is cross-platform and open source. It utilizes the V8 JavaScript engine. Node.js lets you do many things at the same time. Node.js is suitable to build applications where you have to maintain a continuous connection between browser and server. You can write applications that send updates to the user in Ruby on Rails or Django will create a huge load on the server. If you use Node.js server has no need of maintaining separate threads for each active client or each open connection. This technique is called long-polling. For doing long-polling Node.js is great. If you want to reuse code between client and server Node.js is good since it runs in JavaScript and uses the same language on the server side and client side.

Node.js is great for developing applications such as online games, interactive games, collaboration tools, chat rooms. Since Node.js is single threaded and event-driven it is fast and can handle many requests at once.

Some of the corporate giants using Node.js are PayPal, Netflix, Walmart, LinkedIn, Uber.