[Server Running] [Node.js, PM2] Using PM2 To Keep Your Node Apps Alive

PM2 is a production process manager for Node.js applications with a built-in load balancer. It allows you to keep applications alive forever, to reload them without downtime and to facilitate common system admin tasks.node

 

Install:git


 

$ npm install pm2 -g

 

Before Start:github


 

PM2 can generate and configure a startup script to keep PM2 and your processes alive at every server restart.npm

$ pm2 startup
# auto-detect platform
$ pm2 startup [platform]
# render startup-script for a specific platform, the [platform] could be one of:
#   ubuntu|centos|redhat|gentoo|systemd|darwin|amazon

 

Start:ubuntu


$ pm2 start bin/www    /* meds example */

This has the same effect as:windows

  $ node bin/wwwcentos

run the app, but on windows, it just keep it run once, once you refresh the page, the app die. [PROBLEM]app

 

If it works as expected, when you kill the process:less

kill -9 <pid>

The pm2 will detect that our app is crashed, so it will start a new pid to run the app.ui

 

[Notice:] On Linux, PM2 will grap the root, run as root, but in genral, we don't want to use root. So we usually create a user to use PM2.

pm2 startup on liunx:

Change the user:

test script:

 

More  information:

https://egghead.io/lessons/node-js-using-pm2-to-keep-your-node-apps-alive

https://github.com/Unitech/pm2

相关文章
相关标签/搜索