Thông thường với ứng dụng Laravel, chúng ta thường chạy và giám sát queue bằng cách sử dụng supervisor. Tuy nhiên supervisor chỉ có trên linux, trong trường hợp máy chủ là windows hoặc đơn giản là muốn tìm một giải pháp khác thay thế ta có thể sử dụng PM2. Để sử dụng PM2 thì trước tiên trên máy cần có nodejs và npm.
Cài đặt PM2
PM2 được cài đặt qua npm
npm install pm2 -g
Cấu hình PM2 file cho Laravel queue
Tạo file laravel-queue-pm2.yml (tên file tùy ý) trong thư mực root của project.
apps: - name: laravel-queue-pm2 script: artisan exec_mode: fork interpreter: php instances: 1 args: - queue:work - --tries=5 - --sleep=1
Chạy laravel queue với PM2
Mở terminal ở thư mục root của dự án và chạy lệnh:
pm2 start laravel-queue-pm2.yml
Vậy là xong, laravel worker đã được chạy ở background.
Một số command PM2 thường dùng
Kiểm tra danh sách các process đang chạy:
pm2 list
Kiểm tra log:
pm2 logs laravel-queue-pm2
Tự động chạy PM2 khi hệ thống khởi động
Chúng ta sẽ sử dụng lệnh như sau:
pm2 startup
pm2 save
Cảm ơn các bạn đã đọc bài. Hy vọng bài viết đem lại một lựa chọn mới trong việc quản lý queue cho các ứng dụng laravel.