hcan Laravel'de olay (Event) ya da iş (Job) ateşlediğinizde kuyruğa (Redis) atılıyor. Redis'i broadcasting amaçlı kullandığınızda Redis burada yayımcı (publisher) oluyor. Redis'in tek başına bir şey yayınlaması bir anlam ifade etmiyor elbette, onu dinleyen bir de abone (subscriber) lazım ki yayınladığı her neyse onu yakalayıp işlem yapabilelim. Burada socket.io abone olarak devreye giriyor. Redis'i dinliyor ve kullanıldığı ortama aktarıyor.
⚡ event(new MessageSent($user, $message)) # Burası ayrıca mesajı veritabanına kaydedebileceğiniz yer
↓
📡 Redis: MessageSent
↑
👂 # Socket.io
io('127.0.0.1:3000').on('MessageSent', function(event) {
// event.user
// event.message
})
gibi düşünebilirsiniz.