Bigpipe billede

Drupal hilser BigPipe velkommen

En teknologisk fremmarch til glæde for os alle

Facebook er verdens mest udbredte sociale netværk og verdens næstmest besøgte website, kun overgået af google.com. Der bliver lagt oceaner af kræfter og økonomi i teknologisk at optimere den komplekse weboplevelse for de milliarder (!) af brugere. Forestil dig nu, at den teknologi nærmest med ét slag er blevet tilgængelig for ikke kun de få top websites i verden, men faktisk for resten af webverdenen.

Det er præcis det, der lige er sket. Den teknologi, der er blevet arbejdet på og forfinet på i årevis, er nu blevet bygget ned i et standardiseret system kaldet BigPipe. Hvad er det præcis, den teknologi kan? Den kan gøre weboplevelsen meget hurtigere, så brugere ikke mister tålmodigheden og klikker væk. 

Traditionelt er det sådan, at alle elementer på siden skal færdigbehandles af webserveren først, før indholdet bliver synligt for brugeren. 

Det vil sige, at ét langsomt element kan blokere for al det resterende indhold. Det bliver en form for flaskehals. Det er ærgerligt, især hvis de dele der mangler i de afgørende sekunder, slet ikke er væsentlige for brugeren. Den mere avancerede, intelligente BigPipe teknologi er fundamentalt anderledes. Her bliver indholdselementerne vist i takt med, at de er færdigbehandlede, indhold vil blive derfor vist, så snart det er klar - og dermed bliver den oplevede hastighed fra brugerens side radikalt reduceret. 

Den måde BigPipe fungerer på er at bryde en webside ned til små delkomponenter som, hver især er uafhængige. Det går hånd i hånd med Drupal. Bruger man Drupal 8 eller 9, skal man derfor stort set ikke foretage sig noget - det er simpelthen med i pakken. Er du ikke helt overbevist endnu, så se videoen herunder. 

Watch & learn

Se forskellen illustreret i videoen til venstre. 

BigPipe billede 2

Prioriter indhold for brugeren

At fokusere på hastighed er vigtigt for alle websites, men er særligt vigtigt for indholdstunge sider med mange elementer. En anden snedig manøvre, der kan lade sig gøre med hjælp af BigPipe, er at prioritere indhold for brugeren - det vil sige vælge hvilke indholdselementer, der skal have første visningsprioritet. 

Fx prioriterer Facebook, at deres brugere ser newsfeedet først, da de mener, at den type indhold er det vigtigste for deres brugere - så loader bannere etc. efterfølgende. Teknologien kaldes også intelligent caching, fordi data bliver behandlet parallelt og simultant, og fordi brugeren oplever sidens 'rendering' som mere progressiv.

Hvis man vil anvende BigPipe teknologi, kræver det, at man har utrolig godt styr på strukturen på sin side. Ellers rsikerer man fx at indholdslaget (back-enden) og præsentationslaget (front-enden) blandes sammen. Grunden til at man med Drupals seneste version, Drupal 8, kan benytte sig af BigPipe er netop fordi, at versionen muliggør en ekstrem struktureret tilgang til sit indhold. 

Drupal udviklere behøver ikke som sådan at oplæres i BigPipe. Drupal systemet aflæser, hvilke sidekomponenter, der er cachet og bruger den information til at optimere sideleveringen. 

Det, som forskellen kan koges ned til, er hastigheden og den oplevede hastighed. I en digital optik er det et vigtigt succeskriterie i næsten alle henseender og særligt vigtigt, hvis fx brugerens browserversion er gammel, eller at internetforbindelsen er langsom. Det har været spændende at følge den rejse, BigPipe teknologien har været på, og det er fantastisk, at det nu kan være muligt for mange flere ikke at skræmme deres målgruppe væk med et langsomt loadende website.

Vil du vide mere om teknologien bag, så læs Wim Leers artikel her