Node.js là một
hệ thống phần mềm được thiết kế để viết các ứng dụng internet có khả năng mở rộng, đặc biệt là
máy chủ web.
[1] Chương trình được viết bằng
JavaScript, sử dụng kỹ thuật điều khiển theo sự kiện,
nhập/xuất không đồng bộ để tối thiểu
tổng chi phí và tối đa
khả năng mở rộng.
[2] Node.js bao gồm có
V8 JavaScript engine của Google,
libUV, và vài thư viện khác.Node.js được tạo bởi Ryan Dahl từ năm 2009, và phát triển dưới sự bảo trợ của
Joyent.
[3][4]Mục tiêu ban đầu của Dahl là làm cho trang web có
khả năng push như trong một số ứng dụng web như
Gmail. Sau khi thử với vài ngôn ngữ Dahl chọn Javascript vì một API Nhập/Xuất không đầy đủ. Điều này cho phép anh có thể định nghĩa một quy ước Nhập/Xuất điểu khiển theo sự kiện, non-blocking.
[5]Vài môi trường tương tự được viết trong các ngôn ngữ khác bao gồm
Twisted cho
Python,
Perl Object Environment cho
Perl,
libevent cho
C và EventMachine cho
Ruby. Khác với hầu hết các chương trình Javascript, Nodejs không chạy trên một trình duyệt mà chạy trên Server. Node.js sử dụng nhiều chi tiết kỹ thuật của
CommonJS.
[6] Nó cung cấp một môi trường
REPL cho kiểm thử tương tác.Node.js được
InfoWorld bình chọn là "Công nghệ của năm" năm 2012.
[7]