DevOps

Menjaga Uptime dengan Supervisor dan Queue Worker yang Resilient

Banyak pekerjaan berat di Sitetisfy CMS — generate embedding FAQ, import Excel, kirim webhook — berjalan lewat queue, bukan inline di request. Itu bagus untuk responsivitas, tapi berarti kami butuh kepastian kalau worker-nya benar-benar hidup.

Supervisor, bukan sekadar artisan queue:work

Menjalankan php artisan queue:work langsung di terminal gampang mati tanpa disadari — SSH terputus, server reboot, atau proses di-kill karena out-of-memory. Supervisor menjaga proses itu tetap berjalan, otomatis restart kalau mati, dan memisahkan worker ke beberapa queue (embeddings, imports, default) supaya job besar tidak memblokir job kecil yang butuh cepat selesai.

Observability sederhana yang sering terlewat

Hal paling murah tapi paling sering dilupakan: memastikan log Supervisor benar-benar diawasi, bukan cuma dikonfigurasi lalu ditinggal. Satu baris di crontab untuk Laravel scheduler, ditambah alert sederhana kalau proses worker hilang, menutup celah yang paling sering jadi insiden tengah malam.