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

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

Реалізація

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

Два основні підходи

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

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

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

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

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

Див. також

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.