Пришло время для websocket?

Знаком с ним, но к увы на тот момент он был не актуальным.
С первого знакомства он мне понравился, когда начал изучать, наткнулся на все его плохие стороны и отложил в сторону.
Спустя почти год, я решил попробовать ввести его в проект и хочется спросить, кто писал проекты с использование websocket ?
Как он видет с клиентом?
Какой % юзекров он охватывает (поддержка) ?
Как быть с теми у кого он отключен, не доступен, и вообще нету поддержки ?
Какие проблемы могут возникнуть при работе с ним ?

Спасибо, хочется знать ваше мнение.
Может есть альтернатива, новые варианты (про ajax не писать, если только он не альтернатива"при отказе работы websocket")
  • Вопрос задан
  • 1045 просмотров
Решения вопроса 4
akubintsev
@akubintsev
Опытный backend разработчик
Как он видет с клиентом?
Какой % юзекров он охватывает (поддержка) ?
Как быть с теми у кого он отключен, не доступен, и вообще нету поддержки ?
Какие проблемы могут возникнуть при работе с ним ?

- не понимаю до конца вопроса, но клиенты видят нормально
- его нет только у пользователей IE < 9, опционально не отключается в браузере
- проблемы могут быть, если не зарулить его грамотно в nginx как часть url (а не как некоторые просто вешают отдельным портом). И еще конечно же при работе в сетях мобильных операторов, это надо отдельно тестировать.
Ответ написан
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
Веб-сокет как вебсокет, время его уже давно пришло.
А что, собственно, Вас смущает?
Ответ написан
Kaer_Morchen
@Kaer_Morchen
Разрабатываю web-приложения.
Я использовал.

Как он видет с клиентом?
Какой % юзекров он охватывает (поддержка) ?

IE10+ caniuse websockets

Как быть с теми у кого он отключен, не доступен, и вообще нету поддержки ?

Я делал так, у меня фронтэнд на Ember.js, если сокеты поддерживаются, включается адаптер который тянет API через сокет, если нет - стандартным RESTful.

На бэкенде пишите так архитектуру чтобы контроллеры отдавали только массив готовых данных, а middleware уже подготавливали ответ в нужный формат в зависимости от того, кто инициализировал запрос, RESTful или websocket.

Такой подход минимизирует дублирующий код.

Какие проблемы могут возникнуть при работе с ним ?


У нас с PHP были проблемы. Один pid не имеет доступа к другому pid. Соответственно чтобы процессы могли общаться с друг другом нужно было поднимать еще один внутренний сокет на сервере. PHP :)
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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