Kontaktirajte podršku

Odgovaramo e-poštom, obično u roku od dva dana.

Radi zaštite od zloupotrebe, Google reCAPTCHA proverava ovo slanje. Pritom se podaci prenose Googleu. Skripta se učitava tek kada otvorite ovaj formular.

← Sve objave

Spisak ko je na mreži, obećan 2012. i sada uživo

O sadržaju i njegovoj proveri

U ovom članku

Dana 25. avgusta 2012. objava na ovom blogu najavila je da su se polja statistike počela osvežavati sama i završila rečenicom: „Planirana funkcija, spisak ‚Ko je na mreži‘, stiže uskoro!“

Ta objava je još tu. Spisak koji je najavila stigao je tek posle četrnaest godina. Sada postoji, a brojač na koji je ta objava povezivala radi sve vreme.

Šta prikazuje

Stranica sa statistikom ima panel uživo: koliko je ljudi na sajtu u ovom trenutku i najnoviji među njima ispisani – zemlja iz koje su se povezali, grad ako je poznat, koju stranicu gledaju i pre koliko su vremena poslednji put viđeni. Dvanaest odjednom, najnoviji prvi.

„U ovom trenutku“ znači poslednjih pet minuta. Posle sat vremena redovi se brišu potpuno.

0560na listi uživored se još čuvaobrisanominuta od poslednjeg viđenja

Šta „ko“ ne znači

Niko na toj listi nije identifikovan. Pravi se od istog dnevnog heša od 16 bajtova opisanog u objavi o brojanju bez kolačića – iza nijednog reda nema imena, naloga, kolačića ni sačuvane IP adrese.

Čuva se i samo putanja stranice, a ne cela adresa: /shop/boots, a ne ceo link sa svime što su pretraživač ili bilten dodali na kraj.

A dve osobe iz istog grada koje gledaju istu stranicu jednostavno su dva reda. Ništa u sistemu ne može da razlikuje dva čitaoca od jednog čitaoca na telefonu i laptopu. To nije previd koji čeka da bude sređen u nekoj kasnijoj verziji. To je dizajn, i isti je kompromis koji brojač pravi svuda: dovoljno da bude koristan, nedovoljno da nekoga prati.

Uživo bez držanja otvorene veze

Moderan način da se ovo napravi je WebSocket ili događaji koje šalje server – pregledač drži jednu vezu otvorenom, a server kroz nju šalje ažuriranja čim se dese. To je elegantan odgovor i ovde bi bio pogrešan.

Veb server ovog sajta koristi po jedan proces za svaku otvorenu vezu, a njegov pravi posao je odgovaranje na zahteve brojača za par hiljada sajtova. Otvorena veza je proces koji ne može da odgovori nikome drugom. Pedeset ljudi koji gledaju svoju stranicu uživo značilo bi pedeset procesa koji besposleno čekaju da isporuče broj koji se menja na nekoliko minuta.

Zato stranica pita sama, svakih petnaest sekundi, i preuzima mali blok JSON-a. Oko toga stoje tri odluke koje su važnije od intervala:

  • Ako zahtevi počnu da otkazuju, usporava na jedan u minuti – umesto da bombarduje server kome je očigledno već teško.
  • U kartici u pozadini uopšte ne pita, a osvežava se čim se kartica vrati u prvi plan. Niko ne gleda skrivenu karticu, a zahtev bi koštao isto koliko i koristan.
  • Red ažurirano pre N sekundi broji unapred lokalno, jednom u sekundi, i ne košta ništa. Zahtev je potreban da bi se promenili podaci, ne da bi ostarili.

Ništa od toga nije pametno. Srazmerno je, što je na malom serveru vrednije svojstvo od ta dva. Prikaz uživo ne bi trebalo da košta više da radi nego stvar koju posmatra.

Jedan deo koji se nije vratio

U septembru 2015. postojala je objava o tome kako kartica Korisnici uči da razlikuje nekoga ko aktivno čita stranicu od nekoga ko ju je otvorio u kartici u pozadini i zaboravio da postoji.

Ta razlika nije vraćena. Aktuelna lista zna kada je posetilac poslednji put viđen; ne zna da li gleda. Zaista vredi znati – dobar deo „posetilaca“ svakog sajta je napuštena kartica – pa je na listi stvari za izradu.

Nadajmo se ne još četrnaest godina.

Probajte

Objava iz 2012. završila se linkom na primer uživo, što se čini kao pravi način da se završi i ova. Taj originalni link usput i dalje radi: brojač iza njega radi sve vreme i prešao je 1,3 miliona poseta.

Postoji primer uživo ovde, nalog nije potreban da biste ga pogledali.

Oglas