Giới thiệu PM2 – Trình quản lý các ứng dụng NodeJS

Trong bài viết này, mình sẽ giới thiệu về PM2, cho thấy lý do tại sao nó là một công cụ có giá trị như vậy để quản lý các ứng dụng NodeJS.

Trong quá trình phát triển một ứng dụng nodejs, bạn thường khởi chạy app bằng lệnh node app.js, nhưng khi đưa ứng dụng lên môi trường production(prod) thì không đơn giản như vậy.

Giới thiệu PM2 - Trình quản lý các ứng dụng NodeJS
Giới thiệu PM2 – Trình quản lý các ứng dụng NodeJS

Trên môi trường prod bạn cần phải quan tâm tới nhiều thứ hơn: Phân quyền người dùng chạy ứng dụng, quản lý tiến trình, logs, tự khởi động lại…

PM2 là gì?

PM2 là một công cụ quản lý tiến trình nodejs hoàn hảo cho bạn trong hầu hết trường hợp chạy ứng nodejs trên môi trường prod.

Một trong những điểm mạnh của công cụ này là có cung cấp API cho phép lập trình viên có thể điều khiển, giám sát các tiến trình nodejs khác trong một ứng dụng nodejs.

Cài đặt PM2

Phiên bản PM2 mới nhất có thể cài đặt được với NPM hoặc Yarn:

npm install [email protected] -g
# or
yarn global add pm2

Để khởi động một ứng dụng NodeJS

Cách đơn giản nhất để bắt đầu, trình bày và theo dõi ứng dụng của bạn bằng cách sử dụng dòng lệnh này:

pm2 start app.js

Hoặc bắt đầu bất kỳ ứng dụng nào khác một cách dễ dàng:

pm2 start bashscript.sh
pm2 start python-app.py --watch
pm2 start binary-file -- --port 1520

Bạn có thể tìm hiểu thêm tại đây

Quản lý quy trình ứng dụng NodeJS với PM2

Quản lý trạng thái ứng dụng rất đơn giản, đây là các lệnh bạn có thể sử dụng:

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

Thay vì app_namebạn có thể sử dụng:

  • all hành động trên tất cả các processes
  • id hành động trên một id processes cụ thể

Start một npm script với pm2

Đa số trong các ứng dụng NodeJs bạn sẽ sử dụng npm để quản lý các module, package đi kèm. Và bao gồm cả các npm scripts đi kèm để chạy ứng dụng trong file package.json.

Ví dụ như file package.json sau:

Thông thường, để chạy project trong file package.json trên, bạn sẽ chạy lệnh npm run start hoặc npm run dev

Xem thêm:

Nhưng đối với pm2 để chạy các npm scripts, bạn có thể sử dụng cách sau đây.

Tạo một file json đặt tên là my-app-pm2.json với nội dung như sau

Và sau đó chạy pm2 với file json vừa tạo: pm2 start my-app-pm2.json

Hướng dẫn deploy project Nuxt JS lên VPS 😍 Thêm meta tags cho website Nuxt JS Tạo Blog đơn giản với Nuxt JS và WordPress API Cài đặt Git trên Ubuntu 18.04 Hướng dẫn cài đặt Node.js trên VPS Ubuntu 18.04 Sử dụng JavaScript Fetch API với Async/Await Styling Placeholder Text của thẻ input với CSS Cài đặt và Active WebStorm 2019 với License key 50+ thuộc tính thú vị trong CSS Cài đặt WordPress với Caddy web server trên Ubuntu 18.04

Leave a Reply

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.