[Moscow.pm] а вот кто с лонгпулингом работает?

Denis Fedoseev denis.fedoseev на gmail.com
Пн Апр 28 01:23:53 PDT 2014


>Судя по вашему описанию, клиент ведёт себя неадекватно. При реконнекте не
должно идти много соединений. Вы должны инициировать соединение с сервером,
у него есть таймаут, скажем 30 секунд. Если в течение этого времени ничего
не пришло, клиент делает XMLHttpRequest.abort и только потом инициирует
новое соединение. Никаких 30 одновременно никак не получится.

Отлично получится если на странице есть много независимых опрашивалок,
каждая из которых создает запрос.


27 апреля 2014 г., 22:21 пользователь Alexander Lourier <aml на rulezz.ru>написал:

> Судя по вашему описанию, клиент ведёт себя неадекватно. При реконнекте не
> должно идти много соединений. Вы должны инициировать соединение с сервером,
> у него есть таймаут, скажем 30 секунд. Если в течение этого времени ничего
> не пришло, клиент делает XMLHttpRequest.abort и только потом инициирует
> новое соединение. Никаких 30 одновременно никак не получится.
>
>
> 26 апреля 2014 г., 22:17 пользователь Ivan Petrov <i.petro.77.00 на gmail.com
> > написал:
>
> значит причины почему лонгпулинг: потому что вебсокеты пока 5/6
>> браузерами не поддерживается (у нас в ua по логам столько таковых)
>>
>> для доставки сообщений запилили сервер лонгпулинга (на тарантуле).
>>
>> соответственно кому надо - кладет евенты с ключами
>> клиенты подписываются на перечень ключей и получают евенты посредством
>> запросов к лонгпулинг-сервису
>>
>> из за того что клиенты
>>
>> a. на GPRS
>> b. переконнекчиваются
>>
>> то время "жизни" сообщения на сервере довольно большое - >= 10 минут.
>>
>> далее, есть Event'ы на которые скажем кнопочка в интерфейсе
>> перекрашивается. с теми все понятно.
>>
>> но есть Event'ы по которым делается AJAX запрос.
>>
>> все в целом работает оч красиво, юзер практически немедленную реакцию
>> видит на удаленные события.
>>
>> однако есть одна траблема:
>>
>> если у юзера пропадает канал на скажем 5 минут, то после его появления
>> он получает все евенты которые ему пришли за пять минут разом.
>>
>> то есть при выходе его "из тени" может выйти так, что его браузер
>> начинает делать 20-30 AJAX запросов подряд.
>>
>> понятно что можно в *каждом отдельном* случае как-то либо "схлопывать
>> сообщения" внутри большой пачки, либо делать релоад всей страницы итп,
>> но хочется придумать какое-то относительно универсальное решение.
>>
>> вопрос: никто не думал над проблемой лонгпулинга и нестабильного
>> коннекта с AJAX в ответ на события?
>> --
>> Moscow.pm mailing list
>> moscow-pm на pm.org | http://moscow.pm.org
>>
>
>
> --
> Moscow.pm mailing list
> moscow-pm на pm.org | http://moscow.pm.org
>
>


-- 
С уважением, Денис Федосеев
----------- следущая часть -----------
Вложение в формате HTML было извлечено…
URL: <http://mail.pm.org/pipermail/moscow-pm/attachments/20140428/37770c0b/attachment.html>


Подробная информация о списке рассылки Moscow-pm