Продакшен менеджер для Node.JS проекта

pm2.20d3efРазвиваем тему настройки VPS-сервера под Node.JS проект. После того как мы установили Node.JS и MongoDB, скачали и запустили наш проект стоит задуматься о стабильности его работы, а так же отслеживанием его работы.

Для решения этой задачи подходит PM2. Вот что написано на его сайте(примерный перевод): PM2 — это продакшен(production) менеджер для Node.JS со встроенным балансировщиком нагрузки. Он позволяет вашим приложениям жить вечно, а так же перезагружать их на лету и упрощает работу с общими системными задачами администрирования. Собственно именно это нам и нужно, во первых потому что неудобно постоянно следить за работой программы и в случае возникновения критической ошибки заходить на сервер что бы ее перезапустить. А во вторых потому что приложения Node.JS используют только одно ядро ОС и если мы хотим эффективно использовать многоядерный сервер нам нужно запускать несколько инстансов нашего приложения и балансировать между ними нагрузку.

 

Устанавливается приложение так:

sudo npm install pm2 -g

После этого можно запустить приложение:

pm2 start app.js

Что бы приложения автоматически запустились после перезапуска системы стоит добавить pm2 в автозапуск этой командой:

sudo env PATH=$PATH:/usr/local/bin pm2 startup -u user

Так же PM2 поддерживает различные расширения, например автоматическое ратирование логов pm2-logrotate.
Очень удобный параметр для разработчика —watch, запуск программы с этим параметром заставляет PM2 перезапускать приложение при изменении файла.

pm2 start app.js --watch

dreamway89

dreamway89 wrote 29 posts

Post navigation


Добавить комментарий

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>