ในการพัฒนาเว็บแอปพลิเคชันยุคใหม่ การจัดการงานที่ใช้เวลานาน เช่น การส่งอีเมล การประมลผลวิดีโอ หรือการดึงข้อมูลจาก API ภายนอก เรามักจากจะใช้ระบบคิว (Queue) เข้ามาช่วยเพื่อให้ผู้ใช้งานไม่ต้องรอผลลัพธ์นานเกินไป แต่ปัจจัยสำคัญคือการทำให้ Worker รับงานได้ตลอดภายใต้การควบคุมของ Supervisor ครับ
ทำไมต้องมี Supervisor?
บนระบบ Production เราไม่สามารถมาคอยรันคำสั่งด้วยมือได้ตลอดเวลา Supervisor จึงเข้ามาทำหฑ้าที่เป็นผู้เฝ้าดู (Monitor) และสั่ง Restart งานให้เราทันทีเมื่อเกิดปัญหาเพื่อให้ระบบคิวทำงานได้อย่างต่อเนื่องครับ
1. การติดตั้ง Supervisor
เราสามารถติดตั้ง Supervisor บน Ubuntu หรือ Debian ได้ง่าย ๆ
PHP
PHP
sudo apt update
sudo apt install supervisor