Zvarritësi ka konfiguruar mjaft kërkesa të njëkohshme. Gjithsesi ai ndalet sa herë që i kërkon pishinës së proxy-ve një adresë tjetër. Shtimi i më shumë proxy-ve nuk e prek atë ndalim.

Një model i zakonshëm middleware thërret requests.get(pool_url) brenda process_request(). Është një operacion rrjeti sinkron në një rrugë që pritet të bashkëpunojë me motorin asinkron të Scrapy. Ndërsa thirrja pret, mund të mbajë punë të palidhur në të njëjtën fije të ciklit të ngjarjeve.

Ka dy kërkesa në punë

Njëra kërkesë merr një pikë fundore nga shërbimi i pishinës. Tjetra përdor atë pikë për të kontaktuar destinacionin. Matini dhe raportojini ato veçmas. Një API e ngadaltë e pishinës mund ta bëjë çdo proxy të zgjedhur të duket i ngadaltë edhe para se aplikacioni të jetë lidhur me të.

Përdorni një integrim zbulimi asinkron të mbështetur nga versioni i instaluar i Scrapy, ose merrni dhe rifreskoni një grup lokal të kufizuar pikash fundore jashtë rrugës kritike të çdo kërkese. Nëse puna bllokuese duhet të zhvendoset, jepini atij ekzekutori kufijtë dhe trajtimin e afateve të veta; një radhë e pakufizuar thjesht zhvendos vonesën.

Mos nxirrni automatikisht një thirrje tjetër zbulimi për çdo kërkesë. Një cache afatshkurtër ose një grup i marrë me qira mund të ulin varësinë nga shërbimi i pishinës, me kusht që jetëgjatësia e tyre t'i përshtatet politikës reale të pikave fundore të shërbimit.

Përcaktoni çfarë do të thotë një kërkim i dështuar

Një përgjigje bosh ose e dështuar e pishinës nuk duhet të heqë në heshtje metadatat e proxy-t dhe të lejojë një kërkesë të drejtpërdrejtë. Zgjidhni një rezultat të qartë: pritje brenda buxhetit të detyrës, dështim, ose përdorim i një pike fundore të miratuar në cache.

Mbajeni të lirë edhe rrugën e vetë API-së së pishinës. Nëse është shërbim i brendshëm, dërgimi i emrit të tij privat të hostit përmes pikërisht atij proxy që ndihmon në zgjedhjen e tij mund të krijojë një varësi rrethore.

Pasi zbulimi funksionon pa bllokuar punë të palidhur, shqyrtoni transaksionin e zakonshëm të proxy-t. Ato janë riparime të veçanta dhe kohëmatja e tyre meriton fusha të veçanta në regjistër.

Artikuj të ngjashëm