Цель : я хочу создать веб-скребок в приложении Rails, которое работает бесконечно и может масштабироваться.
Текущее приложение стека работает: ROR / Heroku / Redis / Postgres
Идея : я думал о запуске задания Sidekiq , которое выполняется каждые n минут и проверяет, есть какие-либо прокси, доступные для очистки (они будут сохранены в таблице со статусом спящий / очищающий).
Если предположить, что есть прокси, доступный для очистки, он проверит (используя Sidekiq API ) если есть работники, готовые запустить другую работу, чтобы очистить имеющийся прокси.
Это означает, что я могу масштабировать скребок, увеличивая количество работников и количество доступных прокси. Если по какой-либо причине задание не выполняется, задание, которое ищет доступные прокси, просто запустит его снова.
Вопросы : Это лучшее решение для моей цели? Является ли использование длительных рабочих мест Sidekiq лучшей идеей или это может взорваться?