недавно проводил анализ вариантов для решения этой типичной задачи, выбор пал на проект
https://github.com/centrifugal/centrifugo - очень удобный, хорошая докуменация, превосходная производительность, современный, поддерживается. Стоит отметить, что на тот момент, когда я общался с создателем этого фреймворка, нельзя было передать данные с клиента на сервер через вебсокеты. Но часто это и не нужно для решения.