The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Началось тестирование Flash Player 11.2 с поддержкой многопо..."
Отправлено Stax, 27-Окт-11 23:17 
Не исправят. Уже сколько исправляют, блин. В настоящий момент из мейнстриймовых есть ровно один браузер, поддерживающий вебсокеты - google chrome - да и там реализацию постоянно меняют, равно как и меняют спецификацию и реализацию серверной стороны.

Да и проблема не только в глюках; на вебсокетах не получается (server-side) сделать нормальный аналог select/poll, например, что мешает реализации приложений по некоторым дизайнам. Т.е. на выбор из серверных дизайнов предлагаются: асинхронные коллбэки на входящее от клиента событие. Требует двух тредов, если мы хотим обрабатывать входящие запросы, совсем не прерывая исходящего потока в неожиданный момент и мерзкие проблемы с синхронизацией и thread-safety. Блокирующий wait+read: опять же два треда, чтобы это как-то работало, и другие неприятности. Эмулируемый аналог select/poll, например как в websockify: при посылке сообщения от клиента оно задерживается на клиенте, а на сервер приходит пустая нотификация о новом сообщении, что через коллбэк устанавливает флаг о наличии сообщения в сокете. Потом можно сделать тот самый wait, заблокирующий до новых данных от клиента, который не зависнет, т.к. на него придет реальное сообщение от клиента. Из недостатков - высокая (иногда очень высокая) латентность.
Я не знаю, почему для вебсокетов нельзя делать настоящий select или неблокирующий ввод/вывод. Почему-то ни практически один фреймворк не дает, а тот, что дает, эмулирует это через хак выше.

Еще есть проблемы с реализацией SSL-вебсокетов. Формально вроде можно, фактически - реализовано и поддерживается не везде и работает плохо, например с точки зрения load balancing при использовании haproxy и т.д.

Все это в сочетании с жутким draft-состоянием вебсокетов и будущими изменения стандарта, а так же тем, что везде, кроме chrome нынче вебсокеты работают через websocket-эмуляцию из флеш-сокетов весьма способствовали желанию плюнуть и просто использовать *НОРМАЛЬНЫЕ* tcp-сокеты из флеша, а не этот жуткий хак под названием "вебсокеты". Которые на самом деле всего лишь долгоживущие HTTP/1.1 соединения под другим соусом. Вы и не представляете, какое облегчение вернуться к настоящим сокетам со всеми плюшками после этих "веб".

И да, к счастью, проект для серьезной и достаточно узкой аудитории и позволяет выставить требование "необходим флеш!". Всяко лучше, чем "необходим chrome, меняйте браузер!".

PS server-sent events выглядят интересно, надо посмотреть. Хотя тут, видите, ограничение: из IE не поддерживается. Вебсокеты тоже не поддерживаются, но там легко делается фоллбэк на флеш-сокеты, а тут совсем другой дизайн и это может быть нетривиально :-/

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру