Oletko koskaan miettinyt mistä kirjaimet http:// selaimen osoiterivin alussa ovat peräisin? Lyhenne tulee sanoista Hypertext Transfer Protocol ja sen sekä Hypertext Markup Languagen eli HTML:n kehitti vuonna 1989 Tim Berners-Lee työskennellessään CERN-instituutissa. Kaikkien maailman verkkosivustojen toiminta perustuu edelleen siihen, että selainohjelma hakee verkkopalvelimelta HTTP-yhteydellä HTML-sivuja ja näyttää ne käyttäjälle. Niiden päälle on toki rakentunut paljon muitakin teknologioita, mutta perusta on ollut pitkään samanlainen.
Virallinen HTTP-standardin versio 0.9 julkaistiin 1991 ja versio 1.0 vuonna 1995. Hieman paranneltu versio HTTP/1.1 julkaistiin kansainvälisenä virallisena standardina vuonna 1997, mutta sen jälkeen internetin kehitys on keskittynyt muihin tekniikan alueisiin. Vasta vuonna 2007 käynnistyi kansainvälinen standardointityö siirtoprotokollan päivittämiseksi ja viimeinkin vuoden 2015 keväällä vahvistettiin uusi standardi HTTP/2.
Standardin viimeistelyn aikoihin kaikki yleisimmät palvelinohjelmistot ja selainohjelmistot ovat toteuttaneet HTTP/2-tuen. Kestää kuitenkin vielä vuosia, ennen kuin kaikki palvelinohjelmistot ja selaimet on päivitetty uusimpaan versioon ja HTTP/2 on laajasti käytössä. Tällä hetkellä vain 10% maailman suosituimmista verkkosivustoista tarjoaa nopean HTTP/2-yhteyden. WP-palvelussa HTTP/2 on käytössä kaikilla asiakkailla.
Nopeus parantaa näkyvyyttä
Seravon WP-palvelussa HTTP/2:n esiversio, Googlen kehittämä SPDY on ollut käytössä jo pitkään normaalin HTTP:n kanssa rinnakkaisena vaihtoehtona, ja SPDY:ä alettiin korvaamaan virallisella HTTP/2:lla keväästä 2016 alkaen. Viimeistään syksyllä 2016 kaikki WP-palvelun asiakkaiden sivustot ovat olleet ladattavissa HTTP/2-yhteydellä (perinteinen HTTP 1.1 säilyy rinnalla toki vielä vuosikymmeniä).
HTTP-yhteys määrittelee kuinka sivusto ja sen osat (kuvat, tyylitiedostot, JavaScript) ladataan. HTTP/2:n keskeisin etu on merkittävästi parantunut nopeus. Nopeuden parantuminen perustuu ensisijaisesti siihen, että jokaista sivuston osaa ei enää ladata erikseen omaa yhteyttä pitkin, vaan palvelimen ja selaimen välillä sivuston sisältö ladataan tiiviisti pakattuna peräkkäisenä datana samaa yhteyttä pitkin. Isojen tiedostojen latautumiseen HTTP/2 ei vaikuta, mutta latenssiin liittyvän optimoinnin takia usean pienen tiedoston latautuminen on HTTP/2:lla selkeästi nopeampaa.
Mitä hyötyä nopeudesta sitten on? Nopeasti toimivat sivut keräävät enemmän kävijöitä, pärjäävät paremmin Googlen hakutuloksissa ja mahdollistavat miellyttävän selailun myös mobiililaitteilla. Sivuston nopeudella voi siis olla suoria vaikutuksia yrityksen liiketoimintaan.
Uudet ominaisuudet HTTP/2:ssa
HTTP/2:ssa on myös muutamia uusia ominaisuuksia, mutta nähtäväksi jää miten selaimet ja ohjelmistot (kuten WordPress) niitä ryhtyvät käyttämään. Uusia ominaisuuksia ei välttämättä voi käyttää heti, koska pitää odottaa että kaikkien käyttäjien selaimet päivittyvät tai rakentaa uudet ominaisuudet siten, että ne voivat toimia myös ilman HTTP/2:sta, mikä taas tarkoittaa ylimääräistä työtä.
Jo tässä vaiheessa voi sen sijaan olla järkevää muuttaa sivustojen kehitystapoja siten, että ei ainakaan enää jatkossa viritä sellaisia HTTP 1.1:lle tarkoitettuja optimointeja (pikkukuvien yhdistäminen samaksi tiedostoksi, CSS ja JS yhdistäminen samaksi tiedostoksi, sivuston tiedostojen lataaminen eri osoitteista ja niin edelleen), joista ei ole enää hyötyä HTTP/2:ssa. Wikipediassa on hyvä artikkeli HTTP/2:n ominaisuuksista.
Keskeiset uudet ominaisuudet HTTP/2:ssa:
- yhteys on binääriä, ei enää tekstiä
- käytännössä yhteys on oltava suojattu (HTTPS)
- yhteyden otsikkotiedot on pakattu
- samassa yhteydessä voidaan siirtää useita eri tiedostoja, eikä sivuston lataamista enää jarruta tiedostojen latausjärjestys tai vapaiden yhteyksien odottelu, eikä palvelimen ja selaimen välinen latenssi ole enää niin merkityksellinen
- palvelin voi ”työntää” tietoa selaimelle eikä enää vain odotella että selain pyytää lisää tietoja
Semanttinen taaksepäinyhteensopivuus HTTP 1.1:n kanssa säilyy:
- HTTP:n samat metodit (GET, PUSH yms) eivät muutu
- Status-koodit (302, 404 jne) eivät muutu
- HTTP-otsakkeiden nimet ja merkitys säilyvät
Uusi vauhti vaatii HTTPS-suojauksen
HTTP/2-standardiin ei sisälly, että yhteyden on pakko olla salattu, mutta koska useimmat selaimet (Chrome, Firefox, Safari, Opera jne.) käyttävät HTTP/2:sta vain HTTPS-suojatun yhteyden yli, ei HTTP/2:sta ole hyötyä ellei HTTPS ole myös käytössä. WP-palvelussa kaikkien asiakkaiden sivustot ovat HTTPS-suojauksen takana (ja HTTPS:n kanssa on käytössä myös ALPN), joten HTTP/2 on oikeastikin käytössä.
Meille on tärkeää, että asiakkaamme voivat luottaa siihen, että heillä on aina paras teknologia käytössä. Siksi tutkimme HTTP/2:ta sekä teoriassa että käytännössä WordPressin kanssa. Otimme HTTP/2:n käyttöön heti kun teknologian kaikki osat olivat riittävän kypsiä ja tuottavat asiakkaillemme selkeän uuden hyödyn.
Comments
2 vastausta artikkeliin “HTTP/2 nopeuttaa verkkosivujen latautumista”
[…] tärkeämpää on varmistaa, että sivustolla on käytössä HTTP/2-protokolla tiedostonsiirrossa. Seravolla HTTP/2 on ollut vakiona kaikilla asiakkailla vuodesta 2016 lähtien, ja sitä ennenkin käytössä oli vastaava toteutus […]
[…] ja HTTPS kaikilla asiakkailla, aina. Kaikki nykyaikaiset selaimen tukevat uutta HTTP/2-protokollaa, joka nopeuttaa selainten tapaa ladata verkkosivuja […]