Вы можете пойти, PM2 с Nginx .
Это наиболее предпочтительный способ масштабирования приложений node.js.
Вот лучшее объяснение:
Nginx снаружи, чтобы быть входной дверью.Он должен обрабатывать SSL и быть обратным прокси в pm2.Бонусные баллы за сопоставление статических активов в nginx и узле защиты от этих запросов.
Затем pm2.Это также обратный прокси-сервер, но он очень специфичен для процессов узлов и действительно является скорее диспетчером процессов, чем веб-сервером.Используя это все еще отличная идея.Вы можете ускорить процессы N узлов, что позволит вам использовать преимущества нескольких процессоров, и pm2 продолжит их работу в случае сбоя.Вы также можете сделать изящный перезапуск, обновляя один экземпляр приложения за раз, без простоев.
Pm2 также поставляется с некоторыми удобными утилитами, такими как встроенные (freemium) метрики, и отличным небольшим инструментом веб-управления.Вы могли бы показывать основную статистику и стандартный вывод ваших процессов.
Наличие обоих слоев на одном сервере или разделенных при необходимости дает вам большой контроль и производительность.Накладные расходы совсем не плохи (поскольку каждый слой делает то, что он делает лучше всего), и его совсем не сложно настроить.