Czy jest różnica między długimi sondażami a używaniem komety

Wdrażam system, w którym potrzebuję aktualizacji w czasie rzeczywistym. Patrzyłem na pewne scenariusze i wśród wszystkich była Kometa. Realizując to nie widzę w żaden sposób różni się to od tradycyjnego long-ankietowania.

W obu przypadkach musisz wysłać zapytanie, a następnie serwer odeśle odpowiedź z powrotem. W przeglądarce interpretujesz odpowiedź, a następnie uruchamiasz nowe żądanie.

Więc dlaczego powinienem używać comet, jeśli w obu przypadkach muszę otwierać i zamykać połączenia.

Author: Saif Bechan, 2010-04-03

4 answers

Niektóre techniki Comet nie wymagają ciągłego otwierania nowych żądań( na przykład chunked hidden iframe). Ale to nie działa dobrze we wszystkich głównych przeglądarkach bez (jak delikatnie ujął to jeden Wikipedysta) negatywnych skutków ubocznych, stąd technika długiego sondowania. Więcej w linkowanym artykule.

 12
Author: T.J. Crowder,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-04-03 09:58:29

Jak wspomniał Marcelo, Comet {[2] } jest zwykle używany do opisania wszelkich technik "streamingu HTTP", w tym long-ankietowania. W niektórych przypadkach Kometa może również odnosić się bardziej konkretnie do protokołu Bayeux. Na przykład wtyczka jQuery Comet jest tego protokołu. Ze strony Bayeux:

Dostarczanie asynchronicznych wiadomości z serwera do web klienta jest często opisywane jako Server-push. Połączenie technik Server push z Ajaxem aplikacja internetowa została nazwana Comet. CometD to projekt Fundacji Dojo mający na celu dostarczenie wielu implementacji protokołu Bayeux w kilku językach programowania.

Bayeux jest próbą standaryzacji protokołu publish/subscribe przy użyciu technik Comet, pozwalając dostawcom bibliotek po stronie klienta i serwera na tworzenie interoperacyjnych komponentów.

 11
Author: Jørn Schou-Rode,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-04-03 10:03:44

Comet jest pojęciem parasolowym dla szerokiego zakresu asynchronicznych technik aktualizacji, z których long-polling jest tylko jednym.

 7
Author: Marcelo Cantos,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-04-03 09:54:57

Jeśli chcesz wcisnąć zamiast ciągnięcia, możesz użyć JPE .

 0
Author: xavierm02,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-04-03 10:27:26