Как правильно организовать push уведомления на сайте?

Доброго времени суток, я хочу организовать на сайте некое подобие live. Все мы привыкли видеть push уведомления в социальных сетях например, когда нам кто-то пишет.
Бэкэнд написан на PHP. Теперь я думаю на чем писать лучше push сервер - Go или NodeJS. Все это дело связать с бэкэндом на PHP я решил посредством RabbitMQ. И для Go и для Node есть готовые модули позволяющие работать с websocket и RabbitMQ. Правильно ли я думаю или стоит что-то изменить? И может быть для этого есть какой-то готовый стек?
  • Вопрос задан
  • 7798 просмотров
Решения вопроса 2
uvelichitel
@uvelichitel Куратор тега Go
habrahabr.ru/users/uvelichitel
Я живой чат на websocket на Go писал под заказ(даже где то у меня на github валяется). Все работало, это было не сложно.
Но, Go websocket реализуют протокол последнего RFC, а старые Opera и IE нет. В корпоративном секторе, в частности в казенных заведениях только старые браузеры и стоят. Заказчик сказал - дописывай прокладку на все проприетарные реализации протокола или fallback на long_polling. Я ответил - лень, напишу "Обновите браузер". Заказчик не принял.
Если хотите угодить всем, пользуйте библиотеку с откатом на ajax_long_polling вроде socketIO(Для Go драйвера написаны), но код теряет элегантность и писать становится не фан.
Для мобильных платформ прекрасно работают Push сервисы apple и google(драйвера тоже написаны)
Ответ написан
Я для пуш сообщений centrifugo использую, кроме нее дополнительно ставить ничего не надо на сервер (ну разве что supervisor). Организация такая: прочитать документацию, сгенерировать конфиг для центрифуги, запустить ее, скачать либу с гитхаба для php сервера и пример для клиента и запилить свое приложение. Если используете ларавел, то вообще все быстро сделаете на родных евентах и бродкастинге сообщений.
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
BupycNet
@BupycNet
Основатель PushAll
Лучше ещё уведомления при закрытой вкладке сделайте https://pushall.ru/blog/whatispushnotifications

К слову - вполне реально сделать например в хром и Firefox вообще через service workers с Push API. Т.е. если вкладка открыта пуш может ещё и данные обновлять на странице. если закрыта - будет приходить оповещение на экран
Ответ написан
Комментировать
bootd
@bootd
Гугли и ты откроешь врата знаний!
Комментировать
Supme
@Supme
Просто системный администратор
Тоже писал чат на го, с запуском и авторизацией на пыхе, а когда уже было всё сделано нашёл https://github.com/Imgur/incus
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы