Мне нужно ежедневно скачивать ~ 10 000 файлов с сайта, где размер каждого файла варьируется от 50 КБ до 150 КБ
Я планирую использовать простой диспетчер процессов, который разветвляет X-количество процессов для загрузки чанков параллельно: файлы 1–1000 одним процессом, файлы 1001–2000 следующим процессом, файлы 2001–3000 следующим процессом и т. д.
Опять же, все они будут работать параллельно, и это будет быть на экземпляре Amazon EC2.
Есть общее правило, которое я использую, чтобы определить, сколько процессов порождать, чтобы весь процесс (все файлы 10k) загружался в кратчайшие сроки?
Я предполагаю, что «больше процессов» не лучше, поскольку в какой-то момент пропускная способность будет перегружена.
В идеале я хотел бы сохранить это на одном экземпляре EC2, но я открыт для использования большего количества, если вы чувствуете это оптимальное решение.
Какой самый лучший способ узнать оптимальное количество?
Спасибо!
Примечание: номер не фиксирован в 10k. Это только один партнерский сайт. У нас есть другие партнерские сайты, где нам может понадобиться, скажем, 50 000 файлов или более, поэтому я бы хотел, чтобы решение было достаточно общим c.