通过源码解析 Node.js 中一个文件被 require 后所发生的故事

在 Node.js 中,要说如果有几乎会在每一个文件都要用到的一个全局函数和一个全局对象,那应该是非 require 和 module.exports 莫属了。它们是 Node.js 模块机制的基石。大家在使用它们享受模块化的好处时,有时也不禁好奇: 为何它俩使用起来像是全局函数/对象,却在 global 对象下访问不到它们? 'use strict' console.log( »

通过源码解析 Node.js 中 cluster 模块的主要功能实现

众所周知,Node.js 中的 JavaScript 代码执行在单线程中,非常脆弱,一旦出现了未捕获的异常,那么整个应用就会崩溃。这在许多场景下,尤其是 web 应用中,是无法忍受的。通常的解决方案,便是使用 Node.js 中自带的 cluster 模块,以 master-worker 模式启动多个应用实例。然而大家在享受 cluster »