Çok şükür çözdüm problemi hocam. Basit bir şeymiş ama yapıyı bilmediğimizden işte...
Queue worker database şu anda. Database olduğu için sürekli bunu açık tutacak "php artisan queue:work" komutu çalışması lazım.
Localde çalışırken bu sürekli kapanıyor ve manuel olarak çalıştırılması gerekiyor.
Sizin dediğiniz supervisor vb. eklentiler ise bunu sunucu ortamında daha otomatikleştiriyor ve monitöre döküyor anladığım kadarı ile.
Geliştirme aşamasında .env de sync olarak da ayarlanabilir queue worker belki ama gerek yok.
Bu arkadaş çalışmadığı zaman ne eventlar yayınlanıyor ne de websocket sağlam çalışıyor.
Aynı problemi ileride yaşayan olursa diye detaylı yazmak istedim.
Localdeki çalışma ortamınız ile production ortamınızı aynı tutarsanız ileride sorun yaşama ihtimaliniz azalır.
Normalde
php artisan queue:work
komutunun devamlı çalışması lazım ama bazen çeşitli nedenlerle bu komutun çalışması durabilir. Mesela server restart etmeniz gerektiğinde bu komutu tekrar çalıştırmanız gerekir. Supervisor bir process manager yazılımılır ve onun sayesinde bu ve benzer komutların devamlı çalışmasını garanti altına almış olursunuz. Laravel dokumanında detayları bulabilirsiniz:
https://laravel.com/docs/12.x/queues...-configuration
Horizion ile ise queue'ları kolayca yönetebilir, önceliklerini ayarlabilir ve çalışma prensiplerini belirleyebilirsiniz. Detaylar:
https://laravel.com/docs/12.x/horizon