Ну если кроме двух баннеров на первом экране ничего видно не будет...
Да и запросы бы указать не помешало. Вдруг весь траффик по каким-нибудь "как обмануть банк и не вернуть кредит" идет.
Можно попробовать сохранить (однопиксельную) картинку с разными метаданными и посмотреть на полученные закодированные строки.
Сейчас пока остановился на 350 потоках и TIMEOUT=CONNECTTIMEOUT=15
Вроде это близко к оптимальному отношению производительности к общему размеру скачанных данных (если что не докачалось - мне не так критично пока, в будущем посмотрим).
Сколько отваливается - не следил. Ошибки не проверял.
Проверил несколько разных входных параметров и вот остановился на том, где больше данных собралось при меньшем числе доменов, отдавших "пустоту" (там и ошибки, наверное, и неделегированные домены и т.д.).
На 500 потоках побыстрее, но данных меньше получаем. На 1000 потоках - сильно меньше данных. На 3000 потоках уже почти в 20 раз меньше данных.
А что там с параметрами апача типа ThreadsPerChild/ThreadStackSize и др для мультикурла? Я не силен в этом, но почему-то иногда скрипты отваливаются (если параллельно еще запускать кое-что), иногда - нет.
P.S.: пару лет назад прописывал 8.8.8.8/8.8.4.4, а сейчас в настройках их нету. Попробую с ними.
Nam3D, напоминаю: я обхожу зону ru (по одному запросу на домен). И сдается мне, что много времени уходит на внутреннюю работу мультикурла с днс.
Благодарю всех участников топика.
Пока вроде добился 400 000 в час на apache+php+multicurl. Со streams/sockets еще надо будет поэкспериментировать. Если, конечно, никто не скажет, что на *** легко сграбить пару миллионов в час на моем железе и при этом прогрузить все страницы полностью (мультикурл прогружает по-разному в зависимости от числа потоков и таймаутов).
Все домены, кроме моих, имеют нулевой ранк Пастухова (это очень плохо, такие домены не могут быть добавлены в каталог Пастухова). Ранк Пастухова всех моих доменов равен единице. Теперь я могу без негативных последствий отказываться от покупки, если в лоте у продавца не будет явно указан ранк Пастухова?
edogs, нужно свое решение.
Ну и полученные страницы хранить не нужно. Только проверить наличие подстроки и записать флаг в бд.
Вопрос: граббинг через мультикурл на дельфи будет по скорости таким-же, как на apache+php?
P.S.: что-то неблокируемые сокеты читают только часть страницы...
vob2014, благодарю. Паскаль/дельфи изучались лет 10 назад. Вроде было просто. С php работаю последнее время.
Учить новый язык не сильно хочется, но понимать основы и код граббера нужно.
C# будет сильно быстрее python/perl? Там вроде надо за памятью следить внимательнее?
Вроде как есть мысли о python/perl/c (не знаю ни одного из них, знаю php [с его мультикурлом], паскаль/дельфи). Что будет работать быстрее?