Node.js

Node.js is an open-source platform built on Google Chrome’s JavaScript Engine (V8 Engine). It executes JavaScript code outside a web browser and is designed to build scalable network applications. It uses an event-driven, non-blocking Input/Output model and is influenced by Ruby’s EventMachine and Python’s Twisted. Node.js allows developers to use JavaScript for writing command line tools and using server-side scripting, which employs scripts on a web server to produce a response customized for each client’s request to the website.

Node.js was developed by Ryan Dahl in 2009. The initial version supported only Linux and Mac OS X. Though .js is the standard filename extension for JavaScript code, the name Node.js does not refer to a particular file and is solely the name of the product.

How Node.js works

The server engine uses an event-based, non-blocking I/O model, meaning the adaptation of JavaScript to machine language is easier and code can be executed quickly and simply. In comparison to traditional web-serving techniques where each request spawns a new thread, Node.js operates on a single-threaded event loop. This helps servers respond in a non-blocking way and makes the server highly scalable.

Node.js features built-in support for package management using Node Package Manager (NPM). It’s a default tool that comes with every Node.js installation. NPM contains millions of free downloadable libraries according to specific requirements. Anyone can publish their own module to be listed in the NPM repository. Popular NPM modules include:

  • Express: A Sinatra-inspired web development framework (yes, there’s a programming language named for Ol’ Blue Eyes)
  • Hapi: A modular configuration-centric framework for building web and service applications
  • Connect: An extensible HTTP server framework that provides a collection of plugins known as middleware
  • Redis: Redis client library
  • Forever: One of the most common utilities for ensuring that a given node script runs continuously
  • Moment: A JavaScript date library for parsing, validating, manipulating, and formatting dates

Node.js uses

Node.js can be used for:

  • Backend for social media networking
  • Single-page application development
  • Chatbots
  • Data streaming
  • IoT application development
  • Data-intensive real-time applications

It is not advisable to use Node.js for CPU intensive applications.






Abby Braden
Abby Braden
Abby Braden is an award-winning writer and editor for websites such as TechnologyAdvice.com, Webopedia.com, and Project-Management.com, where she covers technology trends and enterprise and SMB project management platforms. When she’s not writing about technology, she enjoys giving too many treats to her dog and coaching part-time at her local gym.
Get the Free Newsletter
Subscribe to Daily Tech Insider for top news, trends & analysis
This email address is invalid.
Get the Free Newsletter
Subscribe to Daily Tech Insider for top news, trends & analysis
This email address is invalid.

Related Articles

Embedded Analytics

Embedded analytics brings self-service business intelligence to everyday application users.

HRIS

Human resources information system (HRIS) solutions help businesses manage multiple facets of their workforce operations. They provide a central platform for human resources professionals...

Complete List of Cybersecurity Acronyms

Cybersecurity news and best practices are full of acronyms and abbreviations. Without understanding what each one means, it's difficult to comprehend the significance of...

Human Resources Management System

A Human Resources Management System (HRMS) is a software application that supports many functions of a company's Human Resources department, including benefits administration, payroll,...

ScalaHosting

ScalaHosting is a leading managed hosting provider that offers secure, scalable, and affordable...

HRIS

Human resources information system (HRIS) solutions help businesses manage multiple facets of their...

Best Managed Service Providers...

In today's business world, managed services are more critical than ever. They can...