Подтвердить что ты не робот

Альтернатива WebSockets

Я был в восторге от перспективы WebSockets. Поскольку в прошлом я создал несколько настольных игр на основе сокетов и веб-игр, я очень хотел объединить два подхода к созданию многопользовательских сетевых игр без долгого опроса.

Поскольку новости о том, что Firefox и Opera отключили веб-сайты из-за проблем с безопасностью (см. здесь), заключается в том, что конец WebSockets для в ближайшем будущем?

Если WebSockets действительно мертвы (или отложены в обозримом будущем), есть ли альтернативы, кроме Long Polling?

4b9b3361

Ответ 1

WebSockets оживают и пинают. Только firefox 4 beta отключил встроенную поддержку WebSockets, у Chrome и Safari этого нет. Opera объявила, что они не отправят с ней релиз до тех пор, пока проблемы не будут устранены, но никогда не отправят альфа-бета-версию с включенным ею образом.

Кроме того, многие (возможно, большинство) проектов, использующих WebSockets, используют web-socket-js (Flash) fall-back. Для этих проектов при запуске в браузерах без использования WebSockets или при его отключении будет использоваться web-socket-js. Это будет менее эффективно, чем нативная, но все же гораздо более низкая задержка, чем длительный опрос.

Но также важно помнить, что WebSockets намного моложе большинства других частей HTML5 (часть причины, по которой она была отколота несколько месяцев назад), и она все еще очень важна в черновике.

Кроме того, рабочая группа HyBi (ответственная за составление протокола WebSockets) только что выпустила обновленный проект стандарта 04, который обращается к безопасности поставщика браузера (обратите внимание, в частности, что проблемы связаны не с уязвимостью в WebSockets, а с тем, что WebSockets можно использовать для использования уязвимостей в HTTP-посредниках).

Обсуждение обсуждения WebSockets по-прежнему очень активно в HyBi. Я ожидаю, что может быть еще один проект с дальнейшими улучшениями, прежде чем он перейдет в следующий раунд релизов браузера. Поставщики браузеров все хотят решить проблему, с которой обращаются WebSockets (низкая латентность, низкая сетевая связь из браузера), поэтому движение в направлении WebSockets происходит быстро.

Текущий удар - всего лишь удар. Но независимо от того, как долго выполняются нативные средства, вы все равно можете использовать WebSockets в каждом браузере, используя web-socket-js.

Обновление

Новый протокол HyBi, который затрагивает проблему безопасности (между прочим), завершен и, как ожидается, будет официально опубликован в этом месяце (ноябрь 2011 г.). HyBi-17 - последняя версия спецификации.

С просмотром разработчика IE10, в том числе с WebSockets, браузером Opera и Android, единственными браузерами, которые не поставляют реализацию WebSockets по умолчанию (реализация Opera может быть включена вручную). Я ожидаю, что это скоро изменится, и тем временем web-socket-js обновлен до серии протоколов HyBi и по-прежнему является хорошим polyfill/shim для браузеров без поддержки по умолчанию.