gCurl - классы для работы с cURL

grigori

( ͡° ͜ʖ ͡°)
Команда форума
fStrange
да, я тоже думаю дописать аплоад файлов
 

grigori

( ͡° ͜ʖ ͡°)
Команда форума
настало время мне вернуться к своему пакету
главное - в нем добавлен gCurlMulti, набор классов/интерфейсов для работы с curl_multi

В оригинальном виде работать с curl_multi весьма неудобно, я написал более понятную обертку из объектов. Основной принцип: создается обект Thread, который регистрируется в обертке над curl_multi_exec.
Thread содержит хендлеры, которые получают заголовки и куски body для каждого "потока".
Теперь скрипт с многопоточными запросами я могу писать за 10 минут.

Я тестировал на 50 "потоках". При оптимизации базы (для URL и данных) система упирается в пропускную способность сети, CPU usage несколько процентов (простой curl на куче запросов упирается в CPU).

http://grik.net/gCurl.tar.gz
В архиве есть примеры использования.
 

moneydigger

Новичок
grigori Привет. Спасибо за класс

Такой вопрос. Как сделать, чтобы данный класс работал в цикле на подобии такого.

require('././gcurl/gcurl.class.php');
$gCurl = new gCurl;

$urls = trim('./urls.txt');
foreach($urls as $url)
{

$return = $gCurl->exec();
print_r($response->cookies);
}

Т.е. где в цикле foreach вставить переменную $url.

$return = $gCurl->load($url)->exec(); Что-то наподобии этого
 

grigori

( ͡° ͜ʖ ͡°)
Команда форума
э ... как насчет почитать мануал и узнать, что trim возвращает строку, а foreach работает с массивами?
а потом почитать структуру классов и найти метод redirect?
прости, но тут не техподдержка и не курсы основ компьютерной грамотности
 
Сверху