Laravel projelerinde arka plan görevlerini ve sürekli çalışan süreçleri yönetmek için Supervisor kullanımı oldukça yaygındır. Bu yazıda, Linux tabanlı sunucularda Supervisor kurulumunu ve Laravel ile entegrasyonunu adım adım detaylandıracağım.
İlk aşamada, Supervisor’un sisteminizde kurulu olup olmadığını kontrol etmek önemli. Ubuntu veya Debian tabanlı sistemlerde genellikle şu komutla kurulum yapılır:
12sudo apt-get update
sudo apt-get install supervisor
Kurulum tamamlandıktan sonra, Supervisor’un servisini yeniden başlatmanız gerekir:
1sudo systemctl restart supervisor
Laravel projeleri için Supervisor konfigürasyon dosyalarını
/etc/supervisor/conf.d/ dizinine eklemek en doğru yaklaşımdır. Örneğin, aşağıdaki gibi bir yapılandırma dosyası oluşturabilirsiniz:
12345678910[[b]laravel-worker.conf[/b]]
[program:laravel-worker]
process_name=%(program_name)s_%(process_num)d
command=php /path/to/laravel/artisan queue:work --sleep=3 --tries=3
autostart=true
autorestart=true
user=your-user
numprocs=2
redirect_stderr=true
stdout_logfile=/path/to/laravel/storage/logs/worker.log
Burada dikkat edilmesi gerekenler;
command satırındaki artisan komutunun Laravel projenizin yoluna göre ayarlanması ve
user parametresinin uygun kullanıcının belirlenmesi. Ayrıca,
numprocs ile aynı anda kaç worker çalıştırılacağını belirleyebilirsiniz.
Konfigürasyonu yaptıktan sonra Supervisor’a yeni yapılandırmayı tanıtmak için şu komutları kullanıyoruz:
123sudo supervisorctl reread
sudo supervisorctl update
sudo supervisorctl start laravel-worker:*
Son olarak, Supervisor’un otomatik olarak başlatılmasını sağlamak ve sistem yeniden başlatıldığında işleri devam ettirmek için:
1sudo systemctl enable supervisor
Bu adımlar, Laravel projelerinde arka plan işlemlerini güvenli ve otomatik hale getirerek sistem performansını optimize eder. Supervisor yapılandırmasında yapılacak ufak ayarlamalar ve log takibi ile sisteminizdeki görev yönetimini daha etkin hale getirebilirsiniz.