cUrl множественный URL открыт - PullRequest
1 голос
/ 07 марта 2011
$query = 'SELECT * FROM `chat` LIMIT 0, 24334436743;'; 
$result = mysql_query($query);
while($row = mysql_fetch_array( $result )) {
$URL = $row['url'];
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,"$URL");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
//curl_setopt($ch, CURLOPT_POSTFIELDS, "user=unrevoked clarity&randominfo=hi");
curl_exec ($ch);
curl_close ($ch);
   }





//curl_close ($ch);
} 

Хорошо, приведенный выше фрагмент показывает, что я извлекаю целую кучу URL-адресов из базы данных, и я пытаюсь отправить данные каждому из них.Но, похоже, это оживляет страницу (даже с одним или двумя URL).Есть ли встроенная система для обработки этого или что-то?

Ответы [ 2 ]

0 голосов
/ 07 марта 2011

Вы можете инициализировать несколько запросов, используя функции curl_multi _ * () , а затем отправлять их одновременно.Вероятно, существует ограничение на количество запросов в пул.И общее время обработки займет столько же времени, сколько самое медленное соединение / сервер.

Таким образом, ваш подход (много разных URL одновременно) все еще проблематичен.Возможно, вы сможете переписать его, чтобы выполнить обработку в браузере, запустить несколько запросов AJAX с некоторой визуальной обратной связью.

0 голосов
/ 07 марта 2011

Запрос URL-адреса из сети является дорогостоящей операцией, и даже загрузка нескольких из них заметно увеличит задержку вашей страницы.Можете ли вы кэшировать содержимое страниц в базе данных?Вы должны загрузить URL;Вы можете заставить клиента сделать это с помощью iframe?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...