24

Jun

Maximaal profiteren van het HTTP/2 protocol


Door de populariteit van het Internet in de laat jaren '90 stelde men al snel de beperkingen van het HTTP/1.0 protocol vast. In 1997 bracht het HTTP/1.1 protocol verschillende optimalisaties, voornamelijk voor het verhogen van de snelheid. Tot op heden gebruiken de meeste websites nog steeds dit oude protocol.

Door de jaren heen kwamen er veel nieuwe technologieën en technieken op het toneel, denk maar aan de opkomst van AJAX en de wederopstanding van Javascript. Een snelle website bouwen vereist tot op heden verschillende optimalisatietechnieken om het aantal aanvragen tussen browser en server te beperken en tevens het aantal Kilobytes dat gedownload wordt te beperken.

Enkele voorbeelden:
 
  • CSS sprites
  • Javascript consolidatie en minificatie
  • CSS consolidatie en minificatie
  • HTTP Compressie en caching
  • CDN
  • ...

Met de komst van HTTP/2.0 midden mei 2015, behoort dit allemaal min of meer tot het verleden.
 

Show me the magic!

In 2012 begon men te denken aan een opvolger voor het populaire en onmisbare Internet protocol als reactie op de ontwikkeling van het experimentele SPDY-protocol van Google. Doel van dit protocol was om de laadtijden van webpagina's te verbeteren. HTTP/2.0 is gebaseerd op SPDY en blijft compatibel met het HTTP/1.1 protocol.
 
  1. HTTP/2.0 ondersteunt multiplexing, een techniek om meerdere aanvragen te lanceren naar de server over één en dezelfde fysieke verbinding. Dit levert reeds een aanzienlijke verbetering aangezien het opzetten van een verbinding tijdrovend is.
  2. Tevens zal de server bij aanvraag van een pagina de gerefereerde bestanden (CSS, JS, fonts, ...) in parallel downloaden bij de initiële aanvraag, zonder dat de browser deze apart dient aan te vragen.

Hierdoor komen enkele van de courante optimalisatietechnieken te vervallen omdat deze net een oplossing bieden daar waar HTTP/2.0 automatisch een oplossing biedt.

Waar moet ik op letten?

Om hiervan de profiteren als eindgebruiker moet je je hier lekker niets van aantrekken! Zolang je maar gebruik maakt van het Internet met een recente versie van je Internet browser (Chrome, Firefox, Internet Explorer, safari, ...).

Echter, als ontwikkelaar of als beheerder van een website zijn er enkele belangrijke gotcha's...
 
  • Je webserver moet het HTTP/2.0 protocol natuurlijk ondersteunen
  • Hoewel het HTTP/2.0 protocol géén SSL verbinding vereist, denken de meeste producenten van Internet Browsers daar enigzins anders over. Nagenoeg álle browsers ondersteunen HTTP/2.0 ENKEL over een SLL-verbinding! Dit komt omdat het protocol enkele problemen introduceerd i.v.m. data encryptie. U vindt hierover meer informatie op Wikipedia.
 

Actie ondernemen

Indien u wenst te profiteren van het nieuwe Internet protocol doe het volgende:
 
  1. Kijk even na met uw beheerder of de webserver het HTTP/2.0 protocol ondersteunt
  2. Koop een SSL certificaat en laat dit signeren door een erkende instantie
  3. Installeer het certificaat op uw webserver (hosting provider)
  4. Redirect aanvragen over HTTP naar HTTPS (bijvoorbeeld via een rewrite rule in je .htaccess bestand)

Besluit

De komst van het HTTP/2.0 protocol zal vast en zeker een positieve invloed hebben op de gebruikerservaring op het Internet. Ik kijk al hoopvol uit naar de vele nieuwe technologieën en producten die dit met zich zal meebrengen. En ik durf het eigenlijk niet luidop te zeggen, maar ik vermoed ook dat versie HTTP/2.1 niet zeer lang op zich zal laten wachten!

Referenties