LINUX.ORG.RU

Насколько готовы websockets?

 ,


0

1

Есть (еще не написанное) веб-приложение, которое можно было бы написать при их помощи. Приложение должно работать долго, стабильно. Стоит ли использовать websockets? Легко обнаружить и исправить разрыв в вебсокетах и часто ли они это делают?

★★★★★

Стоит ли

Стоит.

Легко обнаружить и исправить разрыв в вебсокетах

От тебя зависит ;)

часто ли они это делают

Когда как.

TheBear ()

Разрывы вебсокетов могут быть относительно часто, но, к счастью, определить необходимость реконнекта легко, нужно подвязать соответствующие обработчики на onerror и onclose сокета. Ну и предусмотреть в протоколе, чтобы данные и состояние оставались валидными.

static_lab ★★★★★ ()
Последнее исправление: static_lab (всего исправлений: 1)

Готовы, пиши. Всё будет отлично. Если волнуешься, попробуй использовать socket.io, будет фоллбек до AJAX'а.

Y ★★ ()

Вебсокеты вполне зрелая технология. У нас в проекте используется в частности. Разрывы случаеются так же часто как и в обычном TCP. Это нужно ловить и реконнектиться. Также вам понадобится написать свои пинги, то есть, раз в 5 секунд условно говоря клиент должен слать по вебсокетам специальный запрос Ping, а сервер отвечать на него Pong. Если сервер 10 секунд не видит пинга от клиента, он должен закрывать соединение. Если клиент 10 секунд не получал Pong на свой Ping он должен делать то же самое. Иначе вы будете ждать по минуте или сколько там пока TCP сам развалится в случае дисконнекта, который может не произойти, если между сервером и клиентом умная прокся, которая держит коннект «про запас».

afiskon ()

Использую, работают. Удобно. Клево.

Проблема может быть при работе через прокси по https. Вроде как до сих пор не проксируются они.

Eddy_Em ☆☆☆☆☆ ()

берешь socket.io и все уже готово.

umren ★★★★★ ()

Беглое знакомство, показало, что через squid и прочие проксики могут быть проблемы. Не ковырял на эту тему?

DALDON ★★★★★ ()
Ответ на: комментарий от DALDON

С точки зрения хттп-прокси, коннект по вебсокету это просто долговисящее http-соединение, надо таймаут увеличить.

PolarFox ★★★★★ ()
Ответ на: комментарий от PolarFox

Вопрос скорее так выглядит: а разрешает ли web прокси ходить через себя на порты отличные от: 80,443... Насколько я понимаю, web сокеты, слушают совсем другие порты.

DALDON ★★★★★ ()
Ответ на: комментарий от DALDON

Порт можно другой, можно тот же. Другие порты ставят те, кто не осилили роутинг вебсокетов.

PolarFox ★★★★★ ()
Ответ на: комментарий от PolarFox

Кхм... То есть можно его роутить через стандартные порты: 80,443 вместе с web сайтом? Выглядит годным!

DALDON ★★★★★ ()
Последнее исправление: DALDON (всего исправлений: 1)
Ответ на: комментарий от DALDON

Ага, websocket-соединение начинается как http-запрос с upgrade заголовком.

PolarFox ★★★★★ ()
Ответ на: комментарий от DALDON

Я ж в самом начале писал: никаких проблем не будет кроме wss-вебсокетов (т.е. защищенных). Т.к. они не проксируются, то работать не будут.

Eddy_Em ☆☆☆☆☆ ()
Ответ на: комментарий от afiskon

вполне зрелая технология. У нас в проекте используется в частности

Хотелось бы услышать комментарий к ходячему мнению о небезопасности этого протокола.

hobbit ★★★★★ ()
Ответ на: комментарий от Eddy_Em

А чем защищённый вебсокет отличается от https-трафика с т.з. прокси?

PolarFox ★★★★★ ()
Ответ на: комментарий от PolarFox

Без понятия. Но я думаю, что просто не нужно использовать защищенные вебсокеты, и не будет проблем. Я вообще не вижу смысла в этих защищенных...

Eddy_Em ☆☆☆☆☆ ()
Ответ на: комментарий от Eddy_Em

Я вообще не вижу смысла в этих защищенных...

Смотря что отправляешь по ним.

PolarFox ★★★★★ ()
Ответ на: комментарий от Eddy_Em

WSS проксируются есще лутчше чем простые.

zaz ★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.