Разделы · Парсеры и сбор данных
Прогон большой, машина не слабая, а результат странный.
Начну с цифр, они тут важнее слов.
На маленьком объёме всё работает, разница начинается после ста тысяч. Проверял на двух версиях программы, поведение одинаковое. Прогон рассчитан на восемь часов, встаёт примерно на середине.
$ ./sbor --potokov 120 --spisok chast-01.txt --proksi pool.txt обработано: 48 210 / 50 000 пустых ответов: 1 842
Кто как это обходит?
Осторожнее с этим выводом, он верен не всегда.
Если данные отдаются скриптом, обычный сбор их не увидит. Смотрите, откуда страница берёт содержимое: часто рядом есть простой запрос, который отдаёт то же самое в удобном виде.
Память ест не число потоков, а хранение всего собранного в памяти до конца прогона. Пишите результат на диск пачками, и потолок пропадёт.
Был случай, когда всё сошлось только на третий день разбора.
Перед большим прогоном всегда гоняю пробу на тысяче адресов. Три минуты времени, и сразу видно, где посыплется.
$ ./sbor --potokov 120 --spisok chast-01.txt --proksi pool.txt обработано: 48 210 / 50 000 пустых ответов: 1 842
Хороший разбор, добавлю в закладки.
Работает, пока объём небольшой. Дальше правила другие.
Скорость упирается не в программу, а в темп, который держит площадка. Ставить 300 потоков на 20 адресов бессмысленно, отказы съедят весь выигрыш.
Если поможет, напишите здесь же, пригодится следующим.
Уменьшите потоки вдвое и замерьте заново.
Разбейте прогон на части, станет ровнее.
Начинал с того же, потом переделал.
Скорость упирается не в программу, а в темп, который держит площадка. Ставить 300 потоков на 20 адресов бессмысленно, отказы съедят весь выигрыш.
Был случай, когда всё сошлось только на третий день разбора.
Если данные отдаются скриптом, обычный сбор их не увидит. Смотрите, откуда страница берёт содержимое: часто рядом есть простой запрос, который отдаёт то же самое в удобном виде.
Скорость упирается не в программу, а в темп, который держит площадка. Ставить 300 потоков на 20 адресов бессмысленно, отказы съедят весь выигрыш.
Согласен с предыдущим ответом, но с одной оговоркой.
Если данные отдаются скриптом, обычный сбор их не увидит. Смотрите, откуда страница берёт содержимое: часто рядом есть простой запрос, который отдаёт то же самое в удобном виде.
Смотрите подсети, а не только число адресов.
Так и есть, проходил через это в прошлом году.
Скорость упирается не в программу, а в темп, который держит площадка. Ставить 300 потоков на 20 адресов бессмысленно, отказы съедят весь выигрыш.
Тема нужная, подписался.
Смотрите подсети, а не только число адресов.
Какая версия программы и что с настройками по умолчанию?
Сколько адресов и какой темп при этом стоит?
Уменьшите потоки вдвое и замерьте заново.
Почти так, но одна деталь меняет вывод.
Потери записей чаще всего идут из-за коротких ответов, которые программа считает успешными. Заведите проверку на минимальный размер ответа и на наличие обязательного куска разметки.
$ ./sbor --potokov 120 --spisok chast-01.txt --proksi pool.txt обработано: 48 210 / 50 000 пустых ответов: 1 842
Проверьте, что настройка вообще применилась.