Паралелност на Scrapy прокси за няколко домейна
Използвайте глобалния лимит за паралелност на изтеглящия модул, когато няколко целеви домейна консумират една и съща прокси квота, и отчитайте и другите обхождащи програми, които споделят акаунта.
Ако всяка дестинация използва един прокси акаунт, лимитът за едновременни заявки на този акаунт може да се изразходва за всички тези дестинации. Ограничението само по домейн не изразява този споделен бюджет.
За хипотетичен акаунт, който позволява най-много 20 едновременни заявки, оставете известен резерв и задайте глобалния лимит на изтеглящия модул на обхождащата програма:
CONCURRENT_REQUESTS = 16
Това е илюстративно разпределение, а не препоръчителна стойност за всеки доставчик. Scrapy дефинира CONCURRENT_REQUESTS като максималния брой едновременни заявки на изтеглящия модул. Ограниченията по домейн могат да намалят паралелността допълнително; те не заменят глобалния таван.
Включете в сметката и другите обхождащи програми. Две независими програми, всяка от които има право на 16 заявки, могат заедно да надхвърлят споделения лимит от 20. Разделете бюджета съзнателно или наложете споделено ограничение там, където тези клиенти се срещат.
Установете също какво отчита доставчикът. HTTP заявките, отворените TCP връзки, активните тунели и заявките в секунда са различни величини. Устойчивите връзки и мултиплексирането могат да раздалечат техните бройки. Затова настройката за паралелност на заявките не е пълен ограничител на връзки или на честота.
Пазете темпото на целевия сайт като отделно ограничение. По-ниска паралелност или закъснение при изтегляне може да остане подходящо за отделна дестинация дори когато прокси акаунтът има неизползван капацитет.