Polling blir ofte omtalt som en gammeldags løsning, men det er fortsatt et godt valg når et system trenger periodiske oppdateringer uten krav til ekte sanntid.

Polling er fortsatt relevant
Polling er fortsatt relevant visualiserer hovedpoenget i artikkelen.

Polling løser et moderat behov

Ikke alle oppdateringer må komme umiddelbart. For statuspaneler, enkle varsler, importjobber og mindre aktivitetslister kan det være nok å spørre serveren med jevne mellomrom.

Intervall må velges med respekt for serveren

Et intervall på ett sekund kan virke raskt, men kan bli dyrt hvis mange brukere står på siden. Et kontrollpanel kan ofte klare seg med fem, ti eller tretti sekunder, avhengig av hva som overvåkes.

Stopp når siden ikke er aktiv

Når fanen er skjult eller brukeren har navigert bort, bør polling ofte pauses eller reduseres. Det sparer nettverk, batteri og serverkapasitet.

Backoff ved feil

Hvis serveren feiler, bør klienten ikke hamre videre med samme frekvens. Eksponentiell eller trinnvis backoff gjør at systemet roer seg ned ved feil og prøver igjen mer forsiktig.

Cache må være bevisst

Polling av statusendepunkter bør ha tydelige cache-regler. Hvis svaret kan caches for lenge, kan brukeren se gammel status. Hvis alt alltid hentes på nytt, kan serveren få unødvendig belastning.

WEBoracle-vurdering

WEBoracle kan bruke polling for enkle adminstatuser, importjobber og aktivitetsteller der ekte sanntid ikke er nødvendig. For chat-lignende opplevelser eller høyfrekvent samarbeid bør andre mønstre vurderes.

Konklusjon

Polling er ikke feil når behovet er moderat og kontrollert. Feilen oppstår når intervallet er for aggressivt, feil ikke håndteres, og klienten fortsetter å spørre selv om brukeren ikke lenger trenger svaret.

Kilder og videre lesning

  1. MDN Web Docs: setInterval()
  2. MDN Web Docs: Page Visibility API
  3. MDN Web Docs: Using the Fetch API