PM2 là một trình quản lý tiến trình mạnh mẽ dành cho các ứng dụng Node.js, giúp đơn giản hóa việc triển khai, giám sát và quản lý ứng dụng của bạn. Với các tính năng như tự động khởi động lại, cân bằng tải, và giám sát theo thời gian thực, PM2 là công cụ không thể thiếu cho các nhà phát triển muốn đảm bảo ứng dụng của mình chạy ổn định và hiệu quả.
1. Các tính năng nổi bật của PM2
- Quản lý tiến trình (Process Management): Dễ dàng khởi động, dừng và khởi động lại ứng dụng của bạn.
- Khởi động lại tự động (Automatic Restart): Giữ cho ứng dụng của bạn luôn chạy với khả năng khởi động lại tự động sau khi gặp sự cố.
- Cân bằng tải (Load Balancing): Phân phối lưu lượng truy cập qua nhiều phiên bản để cải thiện hiệu suất.
- Chế độ Cluster (Clustering): Tận dụng tất cả các lõi CPU bằng cách chạy ứng dụng của bạn trong chế độ cluster.
- Giám sát (Process Monitoring ): Nhận các bản ghi chi tiết và giám sát việc sử dụng tài nguyên theo thời gian thực.
- Quản lý nhật ký (Log Management): Tập trung và quản lý nhật ký ứng dụng của bạn một cách dễ dàng.
2. Bắt đầu với PM2
- Cài Đặt PM2:
npm install pm2 -g
Lệnh này sẽ cài đặt PM2 toàn cầu trên hệ thống của bạn.
- Khởi động một ứng dụng:
pm2 start app.js
Lệnh này sẽ khởi động ứng dụng Node.js của bạn (thay app.js
bằng tệp đầu vào của ứng dụng của bạn).
- Liệt kê các ứng dụng đang chạy:
pm2 list
Lệnh này sẽ liệt kê tất cả các ứng dụng hiện đang được PM2 quản lý.
- Dừng ứng dụng:
pm2 stop app_name_or_id
Lệnh này sẽ dừng ứng dụng đang chạy (sử dụng tên ứng dụng hoặc ID từ lệnh pm2 list).
- Khởi động lại ứng dụng:
pm2 restart app_name_or_id
Lệnh này sẽ khởi động lại ứng dụng của bạn.
- Xóa ứng dụng:
pm2 delete app_name_or_id
Lệnh này sẽ dừng và xóa ứng dụng khỏi danh sách quản lý của PM2.
- Xem nhật ký:
pm2 logs app_name_or_id
Lệnh này sẽ hiển thị nhật ký của một ứng dụng cụ thể.
- Giám Sát ứng dụng:
pm2 monit
Lệnh này sẽ mở một bảng điều khiển tương tác để giám sát việc sử dụng CPU và bộ nhớ.
- Lưu danh sách tiến trình:
pm2 save
Lệnh này sẽ lưu danh sách tiến trình hiện tại, để chúng được tải lại khi khởi động lại máy chủ.
- Tạo script khởi động:
pm2 startup
Lệnh này sẽ tạo một script khởi động để chạy PM2 và các ứng dụng của bạn khi hệ thống khởi động.
3. Lợi ích của PM2
- Dễ dàng quản lý: Với các lệnh đơn giản, bạn có thể dễ dàng quản lý các ứng dụng Node.js của mình.
- Tăng tính ổn định: Tự động khởi động lại và giám sát giúp đảm bảo ứng dụng của bạn luôn hoạt động ổn định.
- Nâng cao hiệu suất: Chế độ cluster và cân bằng tải giúp tận dụng tối đa tài nguyên hệ thống, nâng cao hiệu suất ứng dụng.
PM2 không chỉ giúp đơn giản hóa quá trình quản lý ứng dụng mà còn cung cấp các công cụ mạnh mẽ để đảm bảo hiệu suất và độ tin cậy. Để biết thêm thông tin chi tiết và hướng dẫn sử dụng, hãy truy cập tài liệu PM2.