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