NodeJS the Favorite Back-End Tool for JS Developers


(T) Among emerging development platforms for back-end Web services, go to any conference, and you will hear about Node.js. San Francisco had just a conference a few weeks ago: Node Summit.

While JavaScript is the de-facto standard to integrate scripts into Web pages, Node.js does not implement JavaScript for front-end but for back-end applications. A large number of developers with JavaScript expertise has certainly contributed to the success of Node.js.

In a nutshell, Node.js provides server-side C/C++ libraries that run into a JavaScript (JS) engine. The JS engine is based on open source Google’s V8, written in C++, and implemented in Google Chrome. In addition, to Chrome V8 C++ libraries, Node.js adds a number of key networking libraries for TCP/DNS/HTTP.

In order to scale to a large number of clients, and to provide real-time intensive data applications, Node.js architecture is event-driven and performs asynchronous and non-blocking I/Os at the kernel layer. This architecture is more efficient in terms of CPUs and memory than a synchronous blocking I/O architecture that requires more threats to support the direct associations to the network connections. By not systematically associating connections and threads, Node.js needs only a main event loop thread, and many but fewer kernel threads to perform the required I/Os.

Node.js was created by Ryan Dhal while working at Joyent. It is part of Joyent’s cloud offering SmartOS.

Definitely, Node.js is becoming a serious alternative to Web back-end framework such as Django (Python) and Rails (Ruby).

Note 1: Interesting to notice that Google has both designed tools to improve JavaScript with its V8 engine and replace JavaScript with Dart.

Note 2: The picture above is the logo of Node.js.

Copyright © 2005-2013 by Serge-Paul Carrasco. All rights reserved.
Contact Us: asvinsider at gmail dot com.

Categories: Back-End, Open source