Comet (програмування)

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до: навігація, пошук

Comet (у веб-розробці)неологізм, що описує модель роботи яка дозволяє реалізувати постійне HTTP-з'єднання і дає можливість відправляти дані з сервера за його ініціативою без додаткового запиту клієнта.

Реалізація[ред.ред. код]

Оскільки браузери та веб-сервери працюють по протоколу HTTP, який для подібних з'єднань не розрахований то розробники використовують різні реалізації.

Існують два основні підходи:[ред.ред. код]

Long-polling — клієнт підключається до сервера який не закриває з'єднання доки не з'являться дані або мине час очікування. Після чого клієнт підключається повторно.

Streaming — в цьому випадку з'єднання постійно залишається відкритим і не закривається після кожної передачі даних. Цей підхід є складнішим і потребує спеціально програмного забезпечення.

Реалізувати таку модель на стороні клієнта можна з допомогою JavaScript використовуючи AJAX або IFRAME. А на стороні сервера з допомогою, практично, будь-якого веб-сервера та мови програмування.

Проте, сервер в цій моделі повинен одночасно утримувати багато постійних з'єднань.

Звичайний варіант на базі Apache та PHP не зможе витримати велике число одночасних з'єднань, тому краще використовувати спеціалізовані рішення:

Дивись також[ред.ред. код]