Published on

Quản lý ứng dụng Node.js bằng thư viện PM2

Authors

PM2 là gì?

PM2 là một thư viện dùng để khởi chạy và quản lý ứng dụng viết bằng Node.js. Thông qua PM2 chúng ta có thể khởi chạy ứng dụng Node.js dưới dạng một background process, đồng thời cho phép đo lường các thông số kỹ thuật của ứng dụng (bộ nhớ, số lần restart, lượng cpu tiêu thụ, event loop latency, http latency, ...) trong lúc runtime.

Cài đặt và sử dụng

Cài đặt bằng một trong hai cách:

  • Cài đặt dưới dạng một global package
    $ npm i -g pm2
    $ pm2 start app.js
  • Cài đặt dạng local package
    $ npm i --save pm2
    $ npx pm2 start app.js

Một số câu lệnh quản lý process

    $ pm2 restart app_name
    $ pm2 reload app_name
    $ pm2 stop app_name
    $ pm2 delete app_name

Có thể thay thế app_name bằng:

  • all: để áp dụng lên tất cả process
  • id: để chỉ rõ một app id cụ thể

Kiểm tra trạng thái, logs, metrics

Liệt kê tất cả các process đang được quản lý bởi pm2

    $ pm2 [list][ls][status]
pm2-list-processes

Hiển thị logs

    $ pm2 logs
    $ pm2 logs --lines 200
pm2-list-processes

Hiện thị một dashboard trong terminal

    $ pm2 monit
pm2-list-processes

Sử dụng pm2.io

    $ pm2 plus
pm2-list-processes