Настройка Node Cluster с помощью Plesk Onyx - cluster.isMaster возвращает значение false - PullRequest
0 голосов
/ 02 апреля 2019

Я тестирую свое Node-приложение с Node Cluster .

const cluster = require('cluster');
const http = require('http');
const numCPUs = require('os').cpus().length;

if (cluster.isMaster) {
console.log(`Master ${process.pid} is running`);

// Fork workers.
for (let i = 0; i < numCPUs; i++) {
cluster.fork();
}

cluster.on('exit', (worker, code, signal) => {
console.log(`worker ${worker.process.pid} died`);
});
} else {
// Workers can share any TCP connection
// In this case it is an HTTP server
http.createServer((req, res) => {
res.writeHead(200);
res.end('hello world\n');
}).listen(8000);

console.log(`Worker ${process.pid} started`);
}

С вышеуказанными кодами моя локальная машина работает нормально, и терминал показывает 8 процессов / кластеров.

Однако, когда я загружаю свои коды на производственный сервер, например: Plesk Onyx.

  • cluster.isMaster возвращается как false
  • numCPUs возвращаются как 3

Означает ли это, что мой сервер не поддерживает Node Cluster? Или я все еще могу выполнить эту функцию cluster.fork (); ? Могу я узнать, есть ли у меня какое-то решение?

спасибо!

...