Thursday, December 6, 2012

What is Node.js?

Node.js is a server-side JavaScript platform that consists of a very small core library. It runs on the top of V8 JavaScript engine which is Chrome's JavaScript runtime.

Node.js allows us to easily build fast, scalable network applications. From "http://nodejs.org":

"Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient, perfect for data-intensive real-time applications that run across distributed devices."

JavaScript has come of age and it works really well on server side. JavaScript as a server-side platform supports continuous integration, continuous deployment, connections to relational databases, service-oriented architecture.

Node.js solves I/O bound problems which are alleviated by increased throughput in I/O such as disk, memory, and network bandwidth. Node.js provides a non-blocking I/O model using JavaScript. JavaScript is a single threaded language. When doing slow I/O operations such as reading a database, the program does not wait. Instead, it immediately continues to the next line of code. When the I/O operation returns, it triggers a callback function and the result can be processed.


No comments: