여러 도메인에 걸친 Scrapy 프록시 동시성
여러 대상 도메인이 같은 프록시 할당량을 소비할 때는 다운로더의 전역 동시성 상한을 사용하고, 그 계정을 공유하는 다른 크롤러도 함께 계산하세요.
각 대상이 하나의 프록시 계정을 사용한다면 그 계정의 동시 요청 허용량은 그 모든 대상에서 소진될 수 있습니다. 도메인별 한도만으로는 이 공유 예산을 표현하지 못합니다.
최대 20개의 동시 요청을 허용하는 가상의 계정이라면 여유를 남겨 두고 크롤러의 전역 다운로더 상한을 설정하세요.
CONCURRENT_REQUESTS = 16
이것은 예시적 배분이며 모든 공급자에게 권장되는 값은 아닙니다. Scrapy는 CONCURRENT_REQUESTS를 다운로더의 최대 동시 요청 수로 정의합니다. 도메인별 제어로 동시성을 더 낮출 수 있지만 전역 상한을 대체하지는 않습니다.
다른 크롤러도 계산에 포함하세요. 각각 16개의 요청이 허용된 두 개의 독립 크롤러는 합쳐서 20개의 공유 허용량을 초과할 수 있습니다. 예산을 의도적으로 나누거나 그 클라이언트들이 모이는 지점에서 공유 한도를 적용하세요.
공급자가 무엇을 세는지도 확인하세요. HTTP 요청, 열린 TCP 연결, 활성 터널, 초당 요청은 서로 다른 수치입니다. 지속 연결과 멀티플렉싱 때문에 그 수가 달라질 수 있습니다. 따라서 요청 동시성 설정은 연결이나 속도의 완전한 제한기가 아닙니다.
대상 사이트의 속도는 별도의 제약으로 유지하세요. 프록시 계정에 쓰지 않은 여력이 있어도 개별 대상에는 더 낮은 동시성이나 다운로드 지연이 여전히 적절할 수 있습니다.