|
|
|
| 1) Прочитал на форуме фрилансеров, что LONG POLLING жрет много оперативной памяти. Правда ли это? Проверить нет возможности, интересует опыт форумчан)) Фрилансеры посоветовали использовать обычный опрос сервера через аякс с интервалом 3 секунды...В каком их методов искать выигрыш? ПЛАНИРУЮ арендовать сервер, но до октября точно будет хостинг.
2) Тестирую сайт на денвере, и лонг поллинг работает хорошо, в консоли браузера статус соединения pending....Но когда нажимаю F5, сайт на денвере зависает, и приходиться перезапускать денвер. КОД взят с ИНТЕРНЕТА, и он же на моем сайте, и он же зависает:
$limit = 25;// number of second the script allowed to run.
set_time_limit($limit+15);// just to be sure that script will be killed
$time = time();
$last_id = (int)$_POST['id'];
// цикл, проверяющий новые сообщения каждые 5 секунд
while ((time()-$time)<$limit) {
// checking if something new was added to my test table
$sql = "SELECT * FROM chat WHERE `msg_id`>".$last_id." ORDER BY `msg_id` DESC LIMIT 50";
$query = mysql_query($sql);
if (mysql_num_rows($query)) { // если есть новые строки в бд - то обрабатываем и отдаём клиенту
while ($item=mysql_fetch_array($query)) {
// собираем нужные данные из бд
// и отдаем его клиенту через echo
}
// выбрасываем все данные и выходим, чтобы клиент смог их обработать
ob_flush();
flush();
exit;
}
// если данных нет - ждём 5 секунд
sleep(5);
}
mysql_close();
|
| |
|
|