Как использовать 2 ядра в node.js?

Пользователь

от francis_schuster , в категории: JavaScript , год назад

Как использовать 2 ядра в node.js?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от terrence , год назад

@francis_schuster 

Пользователь

от catherine_wintheiser , 3 месяца назад

@francis_schuster 

В Node.js есть возможность использовать несколько ядер процессора при помощи модуля "cluster". Модуль "cluster" позволяет создавать несколько дочерних процессов, которые могут использовать разные ядра процессора для выполнения задач.


Для использования двух ядер в Node.js с помощью модуля "cluster" выполните следующие шаги:

  1. Объявите модуль "cluster":
1
2
3
const cluster = require('cluster');
const http = require('http');
const numCPUs = require('os').cpus().length;


  1. Проверьте, является ли текущий процесс главным (мастер процесс) или дочерним процессом:
1
2
3
4
5
if (cluster.isMaster) {
  // Код для исполнения в главном процессе
} else {
  // Код для исполнения в дочернем процессе
}


  1. В главном процессе создайте несколько дочерних процессов, равное количеству ядер процессора:
1
2
3
4
5
if (cluster.isMaster) {
  for (let i = 0; i < numCPUs; i++) {
    cluster.fork(); // Создание нового дочернего процесса
  }
}


  1. В дочерних процессах выполните необходимую работу, например, создание и запуск сервера:
1
2
3
4
5
6
7
8
if (!cluster.isMaster) {
  // Код для запуска сервера
  http.createServer((req, res) => {
    res.writeHead(200);
    res.end('Hello world
');
  }).listen(8000);
}


Теперь вы запустили несколько дочерних процессов, каждый из которых будет исполнять код на отдельном ядре процессора. Это позволит распределить нагрузку и увеличить производительность вашего приложения в Node.js.