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