Node.js Cluster /span> 集群模块

❮ 内置模块


实例

代码运行3次,第一次是master,然后是worker:
var cluster = require('cluster');

if (cluster.isWorker) {
  console.log('I am a worker');
} else {
  console.log('I am a master');
  cluster.fork();
  cluster.fork();
}
运行实例 »

定义和用法

cluster 集群模块提供了一种创建同时运行并共享同一服务器端口的子进程的方法。

Node.js 运行单线程编程,非常节省内存,但为了利用计算机多核系统,Cluster 模块允许您轻松创建每个运行在自己的单线程上的子进程,以处理加载。


语法

The syntax for including the cluster module in your application:

var cluster = require('cluster');

Cluster 属性和方法

方法 描述
disconnect() 断开所有工作人员的连接
exitedAfterDisconnect 如果worker在断开连接后退出,则返回true,或者kill方法
fork() 从 master 创建一个新的 worker
id 工作人员的唯一 ID
isConnected 如果worker连接到它的master,则返回true,否则返回false
isDead 如果worker的进程已死,则返回true,否则返回false
isMaster 如果当前进程是master,则返回true,否则返回false
isWorker 如果当前进程是worker,则返回true,否则返回false
kill() 杀死当前工作进程
process 返回全局子进程
schedulingPolicy 设置或获取调度策略
send() 向 master 或 worker 发送消息
settings 返回一个包含集群设置的对象
setupMaster() 更改集群的设置
worker 返回当前工作对象
workers 返回一个master的所有worker

❮ 内置模块