Intro
Jokainen estetty pyyntö on enemmän kuin häiriö, se on hiljainen menetys suorittimen ajassa, kaistanleveydessä ja analyytikon huomiossa. Ennen kuin indeksointiohjelma skaalautuu, kokeneet insinöörit aloittavat numeroiden, ei anekdoottien, perusteella. Verkko on nyt täynnä bottien vastaisia ansalankoja: Cloudflaren oppimiskeskuksessa arvioidaan, että "yli 40 prosenttia kaikesta Internet-liikenteestä on bottiliikennettä", ja suuri osa siitä on haitallista. Pysyäksesi kannattavana, kaapijan on muutettava tämä vihamielinen tilasto ennakoitavaksi eräksi, jota voit mallintaa, lieventää ja budjetoida.
Seuraavassa tarkastelemme hypeä neljällä dataan perustuvalla tarkistuspisteellä ja päätämme yhteen oppituntiin. Kokonaispituus: ~710 sanaa.
1 Piilotettu epäonnistumisvero: 40 % botteja ≠ 40 % huonoja toimijoita.
Kun lähes puolet julkisiin päätepisteisiin osuvista paketeista luokitellaan automaattisiksi, alkuperäsivustot reagoivat siihen eskaloituvilla suojauksilla JavaScript-haasteilla, käyttäytymispisteytyksellä ja verkkokerroksen kuristamisella. Jokainen ylimääräinen kierros tai CAPTCHA lisää mitattavissa olevaa viivettä. Viime vuosineljänneksellä suorittamissani suorituskyvyn vertailuanalyyseissä yksittäinen pakotettu uusintayritys paisutti keskimääräistä hakuaikaa 38 prosentilla 10 URL:n näytteessä. Kun tämä kerrotaan miljoonilla URL-osoitteilla, "epäonnistumisvero" kasvaa laitteistokustannusten rinnalla. Käsittele jokaista GET:iä todennäköisenä tapahtumana, ei takuuna. Cloudflaren 40 prosentin mittari on yhtälön lähtökerroin, ei alaviite.
2 Onnistumisprosentin taloustiede: asukaspoolit maksavat itsensä takaisin.
Tutkimus osoitti 99,82 prosenttia onnistuneista pyynnöistä ja 0,41 sekunnin mediaanivastausaikaa eräässä kotiverkossa, kun taas lähimmän kilpailijan vastaava luku oli 98,96 prosenttia. Paperilla ero näyttää pieneltä, mutta käytännössä yhden pisteen lisäys onnistumisessa tarkoittaa kymmenentuhatta lisäsivua miljoonaa sivua kohden ilman uudelleenjonotuksen yleiskustannuksia. Mittakaavassa tämä marginaali kompensoi yksityisasiakkaiden liikennettä koskevan gigatavukohtaisen hinnan. Laskelma on suoraviivainen:
extra_pages = (success_res - success_alt) × total_requests.
Kytke oma volyymisi tähän kaavaan, ennen kuin julistat jonkin välityspalvelimen "liian kalliiksi". Ja muista: SOCKS-protokollan kautta tapahtuva kuljetuskerroksen tunnelointi mahdollistaa sekä TCP:n että UDP:n välittämisen saman todennetun kanavan kautta, mikä on kätevää, kun indeksoijasi sekoittaa Seleniumia ja raakoja socket-luotaimia.
3 Sormenjälki-entropia: User-Agent-agenttisi pettää sinut edelleen.
Electronic Frontier Foundationin Panopticlick-tutkimuksessa mitattiin 18,1 bittiä entropiaa tyypillisessä selaimen sormenjäljessä, mikä riittää erottamaan yhden selaimen 286 777:stä. Flash- tai Java-selaimista 94,2 prosenttia oli yksilöllisiä. Tämä tarkoittaa, että IP-osoitteiden vaihtaminen on pelkkää kosmetiikkaa; päätön Chrome oletusasetuksilla sytyttää minkä tahansa laiteprofiilien tutkan. Todellinen torjunta vaatii otsikon satunnaistamista, fonttien tukahduttamista ja aikavyöhykkeen väärentämistä samaan hengenvetoon IP:n vaihtamisen kanssa. Käsittele sormenjälkien vaihtelua osana proxy-poolin entropiabudjettia.
4 Pyöritystiheys ja väärät positiiviset tulokset: jahdataan 0,01 %:n osuutta.
Jopa täydelliset välityspalvelimet voivat joutua yli-innokkaiden bottien hallintaan. DataDomen mukaan väärien positiivisten virheiden osuus on alle 0,01 % miljardeista pyynnöistä millisekuntitason laitetarkastusten ansiosta. Tämä asettaa käytännöllisen vertailukohdan: jos oman scraperisi lailliset pyynnöt estetään useammin kuin yksi kymmenestätuhannesta, jätät tuloja pöydälle. Instrumentoi putkistosi "estobudjetin" hälytyksellä, kun se ylittyy, kurista tai vaihda poistumissolmua, ennen kuin kohdetoimialue laittaa kokonaisen aliverkon mustalle listalle.
Tärkein oppitunti
Välityspalvelimen valinnassa ei enää ole kyse IP-osoitteiden lukumäärän laskemisesta, vaan riskiaritmetiikasta. Yhdistä a) empiiriset bottien ja liikenteen suhteet, b) todennetut onnistumisprosenttitaulukot, © sormenjälkientropian mittarit ja d) väärien positiivisten tulosten enimmäismäärät yhdeksi tappiofunktioksi ja optimoi sitten. Ryhmät, jotka määrittävät jokaisen muuttujan, toimittavat indeksoijia, jotka jatkavat kaapimista, vaikka verkko kaivaa yhä syvempää vallihautaa.