|
|
|||||
Long poll Error 2032
Здравствуйте коллеги. Что случилось с URLLoader'om, кто подскажет, или в чём может быть проблема, после секунд 6-7 ожидания от сервера ответа, отдаёт StreamError 2032. Реализация лонг-пулл соединения накрывается медным тазом.
Использую 22 AIR
__________________
return this... |
|
|||||
Не уверен, что URLLoader годится для лонг пула.
Я для мгновенных уведомлений просто создавал tcp сокет, в который сервер присылал код (1 байт), обозначающий какой запрос необходимо выполнить. Ну и ещё код пинга, для проверки активности соединения периодически отправлялся сервером и возвращался клиентом.
__________________
Дети не должны знать о своих родителях |
|
|||||
Вообще, лонг пул на http - это скорее как костыль, или хак. Протокол http изначально создавался для мгновенных запросов, а не для поддержания активного интернет соединения. Если нужно активное интернет соединение, для этого есть отдельные инструменты и протоколы.
__________________
Дети не должны знать о своих родителях |
|
|||||
Дело в том что уже реализовал сервер на Java, причем геймплей пошаговый с задержкой не более 13 секунд ( автоматический переход хода) и вот в один прекрасный миг, мир рухнул. Странно то что в отдельном проекте, конект свободно держиться 30 секунд ( по логике, если сервер в оверхеде (к примеру большая выборка из базы данных, конект должен держаться ), а тут на тебе. Мб, в паралели еще идут подключения, и по специцикации HTTP ( не больше 2-х запросов на один домен ) URLLoader начал обрывать соединения, вот и думаю. Или отказываться от long pull или пересаживать на URLStream ( другие варианты )
Добавлено через 2 часа 32 минуты А нет ли каких нить параметров среды, в которых можно выставить лимит ожидания ответа от сервера? Добавлено через 3 часа 6 минут нашлась багинка. оффтоп
__________________
return this... |
|
|||||
Регистрация: Mar 2007
Сообщений: 319
|
Есть еще http клиенты (альтернативы URLLoader и URLStream) с контролем всех таймаутов на базе socket, первое что нашел https://github.com/gabriel/as3httpclient
А в целом лонг пул уже мало кто использует, он был популярен во времена когда javascript не умел открывать socket соединение, а нужен был реалтайм. Сейчас есть более грамотные альтернативы такие как https://ru.wikipedia.org/wiki/WebSocket |
Часовой пояс GMT +4, время: 11:03. |
|
« Предыдущая тема | Следующая тема » |
|
|