Hvis hver destination bruger én proxy-konto, kan den kontos tilladelse til samtidige anmodninger blive brugt på tværs af alle disse destinationer. En grænse pr. domæne alene udtrykker ikke dette fælles budget.

For en hypotetisk konto, der tillader højst 20 samtidige anmodninger, skal du holde lidt plads fri og sætte crawlerens globale downloader-grænse:

CONCURRENT_REQUESTS = 16

Dette er en illustrativ fordeling, ikke en anbefalet værdi for enhver udbyder. Scrapy definerer CONCURRENT_REQUESTS som downloaderens maksimale antal samtidige anmodninger. Styring pr. domæne kan sænke samtidigheden yderligere; den erstatter ikke det globale loft.

Medtag andre crawlere i regnestykket. To uafhængige crawlere med 16 anmodninger hver kan tilsammen overskride en delt tilladelse på 20. Del budgettet bevidst, eller håndhæv en fælles grænse, hvor de klienter mødes.

Fastlæg også, hvad udbyderen tæller. HTTP-anmodninger, åbne TCP-forbindelser, aktive tunneller og anmodninger pr. sekund er forskellige størrelser. Vedvarende forbindelser og multiplexing kan få deres antal til at afvige. En indstilling for anmodningssamtidighed er derfor ikke en fuldstændig forbindelses- eller hastighedsbegrænser.

Hold tempoet for målwebstedet som en særskilt begrænsning. Lavere samtidighed eller en download-forsinkelse kan stadig være passende for en enkelt destination, selv når proxy-kontoen har ubrugt kapacitet.

Relaterede artikler