Комета VS Ajax опрос - PullRequest
       29

Комета VS Ajax опрос

8 голосов
/ 04 июня 2010

Мне нужно создать чат, как чат в Facebook.

С Comet мне нужно больше памяти, чтобы сохранить соединение.

При опросе Ajax возникает проблема задержки, если я отправляю запрос каждые 3-4 секунды.

Итак ... Если задержка (3-4 секунды) не имеет значения, лучше ли использовать Ajax Polling для моего случая?

Ответы [ 3 ]

6 голосов
/ 07 июня 2010

Задержка не единственная проблема. COMET (длинный опрос) «экономит» ваш трафик - когда вы используете опрос, вы не можете знать, были ли изменения на сервере, поэтому некоторые вызовы могут быть просто пустой тратой трафика и ресурсов (например, даже если никто не в чате вы звоните каждые 3-4 секунды). В случае с COMET вам, как правило, достаточно одного звонка, чтобы получить обновление с сервера (с вероятностью попадания 100%).

2 голосов
/ 17 января 2011

@ Василь: «Вы можете сохранить миллионы открытых соединений»

Посмотрите на эту проблему

И относительно ложного превосходства NIO над IO.

В статье iobound просто показано, что IO превосходит NIO, и да, IO не хватает памяти до NIO (кстати, автор не пытался уменьшить объем стека памяти с меньшим значением).

1 голос
/ 04 июня 2010

Если задержка не является проблемой, то AJAX, вероятно, лучше. Комета может столкнуться с проблемами при поддержании нескольких соединений между одной и той же парой клиент / сервер, если вы не очень, очень осторожны. (Ref)

...