Простой пример кометы с использованием php и jquery - PullRequest
34 голосов
/ 24 августа 2009

Кто-нибудь может дать мне хороший и простой пример техники кометы с использованием PHP?

Мне просто нужен пример, который использует постоянное соединение HTTP или что-то подобное. Я не хочу использовать технику опроса, потому что у меня есть что-то подобное, и не только трудно работать и управлять, но это огромная масса ресурсов. Также я использую IIS7, а не Apache.

Хороший пример был бы очень полезен, чтобы я мог перейти от этой уродливой техники опроса.

Ответы [ 7 ]

14 голосов
/ 28 августа 2009

Вы должны использовать опрос или веб-сервер, специально предназначенный для длинных запросов и COMET, с хорошим JS-сервером:

function listen() {
    $.get("/mylongrequestfile", {}, function(data) {
        $("#mydiv").html(data);
        listen(); // then launch again
    }));
};

Помните, что COMET - это «ожидание данных, если есть возврат и выход данных», поэтому бэкэнд JS должен будет проанализировать данные и перезапустить процесс запроса сервера.

В этом примере, если есть проблема на стороне сервера или просто отключение от стороны пользователя, весь процесс будет прерван (функция вызывается только в случае успешного запроса)

6 голосов
/ 27 октября 2010

Проверьте это: Как реализовать COMET с PHP .
Это не использует JQuery. Это сделано с использованием PHP и Prototype. Это очень легко понять. Я думаю, что вы можете легко сделать скрипт JQuery после просмотра этого.

3 голосов
/ 31 августа 2010

У меня есть очень простой пример, который может помочь вам начать с кометы. Он охватывает компиляцию Nginx с помощью модуля NHPM и включает код для простых ролей издателя / подписчика в jQuery, PHP и Bash.

http://blog.jamieisaacs.com/2010/08/27/comet-with-nginx-and-jquery/

Рабочий пример (простой чат) можно найти здесь:
http://cheetah.jamieisaacs.com/

2 голосов
/ 03 января 2013

Проверьте это демонстрационное видео для реализации Long Polling (комета) .. Это может помочь вам всем

http://www.screenr.com/SNH

2 голосов
/ 24 августа 2009

Никогда не использовав эту технику и не изучив статью Википедии на эту тему, «Длинный опрос» кажется единственным жизнеспособным решением.Это звучит довольно просто для реализации путем бесконечного зацикливания и сна сценария на сервере.* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * [1009] * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *}}}} 1009 *.

1 голос
/ 25 августа 2009

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

Вы найдете два примера на нем. Первый использует технику iframe, а второй использует постоянное соединение.

0 голосов
/ 20 января 2010

Для IIS есть WebSync . Однако, поскольку вы используете PHP, вам может быть лучше с WebSync On-Demand . Любой из них даст вам серверный толчок, который вы ищете, и прост в использовании. Проверьте это задание n, а это, в основном, то, что вы ищете.

Вот простой пример WebSync On-Demand в действии с использованием no языка сценариев. Просто откройте в двух окнах и увидите публикацию / подписку в действии.

Для публикации с сервера вы можете использовать PHP api .

...