Ryan Dahl 是 Node JS 的创建者。该项目的目标是创建具有推送功能(websockets)的实时网站。这是开源的服务器端和网络程序的跨平台运行时环境。使用 Chrome 的 JavaScript 引擎 V8 构建。NodeJS 是轻量级和高效的,因为它使用事件驱动的非阻塞 I/O 模型。非常适合跨多个设备运行的实时数据密集型应用程序。NodeJS 包含许多 JavaScript 库来帮助进行基本编程。NodeJS 的“npm”生态系统是世界上最大的开源库。
事件循环
尽管 JavaScript 是单线程的,但事件循环允许 Node.js。Node.js 通过在可用时将操作卸载到系统内核来执行非阻塞 I/O 活动。因为当前大多数内核都是多线程的,所以它们可以处理许多后台操作。