Как мне реализовать этот сценарий с помощью PHP?


Я пишу приложение для Android, которое использует C2DM. Когда пользователь отправляет какое-либо сообщение на сервер, сервер отвечает отправителю и пересылает это сообщение другим пользователям в сети.

Проблема в том, что ответ отправителю задерживается до тех пор, пока сообщение не будет отправлено всем остальным. Это отнимает много времени. Я хочу, чтобы ответ сначала был отправлен отправителю, а затем выполнил процесс пересылки. Как я могу достичь этого...? Если я могу использовать параллельный обработка, как я могу это сделать на PHP...? Любая помощь была бы очень признательна:)

Я использовал что-то вроде этого,

print(json_encode("Inserted Successfully"));//."   ".count($tags)));

while($row = mysql_fetch_row($result))
{
     $id = $row[0];
     sendMessageToUserID($id,"New Question !!",$ques_id,"yyyy");
}

Но здесь "Успешно вставлено" не отправляется отправителю до тех пор, пока не будет выполнен цикл while.

Author: hakre, 2012-05-02

2 answers

Я не знаю, сработает ли это, но вы можете попробовать добавить заголовки Content-Length: и Connection: close и, конечно, явно выводимый вывод.

РЕДАКТИРОВАТЬ: попробуйте это

ob_start();
//output
header("Content-Length: ".ob_get_length());
header("Connection: close");
ob_end_flush();
//do other stuff
 6
Author: Musa, 2012-05-01 20:55:00

Ob-Неявный-Флеш должен сделать свое дело. :)

 2
Author: DanRedux, 2012-05-01 20:04:38