iOS Safari WebSockets: огромная задержка при отправке сообщений через короткие промежутки времени - PullRequest
0 голосов
/ 09 января 2012

Я только что нашел очень раздражающую вещь об использовании веб-сокетов в iOS Safari (iOS 5.0.1). При отправке двух сообщений с очень коротким интервалом (например, 30-40 мс, например, при отправке сообщения в mousedown по кнопке и одного при наведении мыши), эти два сообщения приходят на сервер с интервалом от 200 до 300 мс. Это делает использование WebSockets на iOS очень болезненным, например, для создания удаленного контроллера ...

Боюсь, я знаю ответ, но есть ли способ заставить его работать лучше? Похоже, что это ошибка в реализации Safari для Websockets, но может ли это быть связано с реализацией WiFi (я так не думаю ...)?

1 Ответ

2 голосов
/ 10 января 2012

Я только что нашел какой-то обходной путь, и что реализация веб-сокетов Safari Mobile ведет себя еще более странно, чем я уже обнаружил.

Выполняя некоторые тесты ping для проверки моей теории, я понял, что ябольше не было проблемыЗатем я снова протестировал свой исходный код и снова столкнулся с той же проблемой.

Затем я понял, что изменилось в моем коде по сравнению с тестом ping: сервер никогда ничего не отправляет клиенту.Поэтому, когда мой сервер получает сообщение от iPhone, он отправляет сообщение обратно на него.Таким образом, латентность исчезает.Это действительно странно, и, вероятно, что-то нужно сделать, чтобы решить эту проблему, но пока что это подойдет ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...