Kuidas me klikke privaatselt loendame
Sisust ja selle ülevaatamisest
Selles artiklis
Loendur vastab küsimusele „kui palju tuli“. Kasulikum küsimus on tavaliselt „kui paljud midagi tegid“ — klõpsasid kontaktilingil, avasid allalaadimise, läksid sotsiaalmeedia profiilile. Sel saidil on selleks sündmused olnud algusest peale: pange data-s4u-event="contact" elemendile ja klõpsud sellel loetakse nime järgi.
Peaaegu keegi ei kasutanud seda, sest peaaegu keegi ei teadnud sellest. Nüüd on seega märkeruut: loe linkide klõpsud automaatselt, atribuute pole vaja. Huvitav pole lüliti, vaid see, mis nime loetav asi saab.
Mitte lingi tekst
Ilmselge nimi klõpsule on sõnad, millele külastaja klõpsas. See on ka vale nimi.
Lingi tekst on vaba sisu. Link võib olla „Tellimus 4711“ või „Sõnum Annalt“ või sisaldada majanumbrit, broneeringu viidet, e-posti aadressi. Kõik see satuks andmebaasi veergu nimega name ja jääks sinna. Selle teenuse privaatsuspoliitika ütleb, et statistika ei sisalda isikuandmeid, ja see peab jääma tõeks sõltumata sellest, mida mõni saidi omanik lingimärgendi sisse kirjutab.
On ka teine probleem, väiksem, aga päris: kakskümmend linki tekstiga „siia“ ühel lehel on üks nimi, mis ei ütle midagi, ja sama link üheteistkümnes tõlkes oleks üksteist nime viiekümnest, mida loendur lubab.
Seega tuleb nimi sihtteest. Selle valis saidi omanik, see on püsiv ja see on juba võti, mida lehestatistika kasutab.
Kolm normaliseerimist, igaüks omal põhjusel
- Keeleprefiks eemaldatakse.
/de/blogja/pl/blogon sama leht. Ilma selleta kulutaks ühe mitmekeelse saidi keelevahetaja üksi ära üksteist viiekümnest nimest. - Viie või enama numbri jada muutub märgiks
n. Kaks statistikalehte erinevate loenduri numbritega ei ole kaks lehte; see on sama leht kaks korda. - Saidilt väljuvad lingid muutuvad märgendiks
ex-pluss host. Võõra lehe tee ei ütle omanikule midagi. Seda, kuhu klõps läks, ütleb.
Ankrud, mailto:, tel: ja javascript: jäetakse vahele — need ei ole sihtkohad, mille klõpse kellelgi vaja oleks loendada. Vahele jäetakse ka elemendid, millel on juba oma sündmuse nimi, sest muidu loetaks sama klõps kaks korda.
Mis see maksab
Brauseriskript kasvas 1 022 baiti pakituna, üks kord esimesel külastusel. Rohkem mitte midagi: lipp sõidab kaasa päringuga, mida skript niikuinii igal lehelaadimisel teeb — päringuga, mis seni vastas alati sama konstandiga — seega teist edasi-tagasi käiku ei ole. Serveris on lülitiga loendurite loend väikeses failis, mitte päringus, sest see päring on täisskaneerimine 166 433 real ja maksab mõõdetult 143,9 millisekundit.
Vaikimisi on see väljas ja jääbki välja. Selle saidi mahu juures lisaks selle kõikjal sisselülitamine umbes üheksa tuhat kirjutust päevas kõige hõivatumasse tabelisse, mis üldse on. See on asi, mille omanik lülitab teadlikult sisse, mitte asi, mis saidiga iseenesest juhtub.