Node.js
Node.js (Node for short), which was developed in 2009 by Ryan Dahl, is the most popular out-of-browser JavaScript engine. Node is an open source, cross-platform JavaScript runtime environment that was based on Chrome's V8 JavaScript engine. It is used to run JavaScript code outside of the browser for non-client, side applications.
Like Google's V8 JavaScript engine in Chrome, Node.js uses a singly-threaded, event-driven, asynchronous architecture. It allows developers to use JavaScript's event-driven programming style to build web servers, services, and CLI tools. As discussed in Chapter 2, Asynchronous JavaScript, JavaScript is a non-blocking and event-driven programming language. JavaScript's asynchronous nature (a single-threaded event loop), along with Node's lightweight design, allows us to build very scalable network applications without worrying about threading.
Note
As discussed in Chapter 2, Asynchronous JavaScript, JavaScript is single-threaded. Synchronous code running on...