Должен ли я использовать Node.js Greenlock- Express в режиме кластера в то же время, когда я использую режим кластера pm2? - PullRequest
0 голосов
/ 01 мая 2020

Я создаю веб-приложение без состояния, используя Node.js, Express и pm2 для управления процессами. В производственных средах я запускаю один экземпляр приложения для каждого ядра ЦП сервера (благодаря кластерному режиму pm2).

Недавно я начал читать о Greenlock- Express (для автоматического получения сертификатов) и у него также есть свойство «cluster», которое, если я правильно понимаю, в основном делает то же самое, что и режим кластера pm2.

Будут ли возникать какие-либо коллизии или возможные проблемы, если я запусту Greenlock- Express и pm2 в режиме кластера? Если они это сделают, что является лучшей альтернативой для автоматического получения сертификатов SSL с Node.js в среде Windows? А если нет, то оптимально ли использовать их в кластерном режиме?

1 Ответ

0 голосов
/ 02 мая 2020

PM2 реализует только частичную поддержку кластера.

См. https://git.rootprojects.org/root/greenlock-express.js/issues/26

Я бы рекомендовал просто использовать serviceman (перекрестный платформа) или systemd (linux) или Docker (облако развертывается).

Если вы собираетесь использовать PM2, вы используете Greenlock Express с ним так же, как вы использовали бы Ruby, Python, et c - как отдельный исполняемый файл, а не как "встроенное" приложение.

Оптимизация по умолчанию для PM2 для приложений узлов уже реализована в Greenlock Express и поскольку PM2 имеет только частичную поддержку кластера, нет никакого способа сказать PM2 передать управление Greenlock Express, или заставить PM2 принять управление от Greenlock Express.

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

...