Node.js - Clusterprozessmodul

❮ Eingebaute Module


Beispiel

Führen Sie den Code dreimal aus, das erste Mal als Master, dann als 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();
}

Definition und Verwendung

Das Cluster-Modul bietet eine Möglichkeit, untergeordnete Prozesse zu erstellen, die gleichzeitig ausgeführt werden und denselben Serverport verwenden.

Node.js führt Single-Thread-Programmierung aus, was sehr speichereffizient ist, aber um die Vorteile von Computer-Multi-Core-Systemen zu nutzen, können Sie mit dem Cluster-Modul auf einfache Weise untergeordnete Prozesse erstellen, die jeweils auf ihrem eigenen einzelnen Thread ausgeführt werden, um die Last zu bewältigen.


Syntax

Die Syntax zum Einbinden des Cluster-Moduls in Ihre Anwendung:

var cluster = require('cluster');

Cluster-Eigenschaften und -Methoden

Method Description
disconnect() Disconnects all workers
exitedAfterDisconnect Returns true if a worker was exited after disconnect, or the kill method
fork() Creates a new worker, from a master
id A unique id for a worker
isConnected Returns true if the worker is connected to its master, otherwise false
isDead Returns true if the worker's process is dead, otherwise false
isMaster Returns true if the current process is master, otherwise false
isWorker Returns true if the current process is worker, otherwise false
kill() Kills the current worker
process Returns the global Child Process
schedulingPolicy Sets or gets the schedulingPolicy
send() sends a message to a master or a worker
settings Returns an object containing the cluster's settings
setupMaster() Changes the settings of a cluster
worker Returns the current worker object
workers Returns all workers of a master

❮ Eingebaute Module