HTTP/2 yra atnaujinta HTTP protokolo versija, kuri, palyginti su HTTP/1.1, suteikia didelių našumo pranašumų. Šiame straipsnyje sužinosime apie HTTP/2 pranašumus ir kaip jį integruoti į Laravel programas.
HTTP/2 naudojimo pranašumai
Multipleksavimas
HTTP/2 leidžia vienu ryšiu siųsti kelias užklausas ir gauti kelis atsakymus vienu metu. Tai sumažina antraštės blokavimą ir pagerina puslapio įkėlimo našumą.
Serverio stūmimas
HTTP/2 palaiko „Server Push“, leidžiantį serveriui aktyviai perkelti reikiamus išteklius į naršyklę, kol to nepaprašo. Tai sumažina išteklių laukimo laiką ir pagreitina puslapio įkėlimą.
Antraštės suspaudimas
HTTP/2 naudoja HPACK antraštės glaudinimą, kad sumažintų užklausų ir atsakymų antraščių dydį, sutaupytų pralaidumą ir pagerintų našumą.
Atgalinis suderinamumas su HTTP/1.1
HTTP/2 yra atgalinis suderinamas su HTTP/1.1. Tai reiškia, kad naršyklės ir serveriai, nepalaikantys HTTP/2, vis tiek gali dirbti su ankstesne HTTP versija.
HTTP/2 integravimas į Laravel
Norėdami programoje naudoti HTTP/2 Laravel, turite įdiegti ir sukonfigūruoti žiniatinklio serverį, palaikantį HTTP/2, pvz., Apache arba Nginx.
Norėdami sukonfigūruoti žiniatinklio serverį, kad jis palaikytų HTTP/2, atlikite šiuos veiksmus:
Įdiekite SSL/TLS sertifikatą
HTTP/2 reikalauja saugaus ryšio per SSL/TLS. Todėl savo žiniatinklio serveriui turite įdiegti SSL/TLS sertifikatą. Norėdami gauti nemokamą SSL sertifikatą, galite naudoti Let's Encrypt.
Atnaujinkite žiniatinklio serverio versiją
Įsitikinkite, kad naudojate naujausią „Apache“ arba „Nginx“ žiniatinklio serverio versiją, nes naujausiuose leidimuose palaikomas HTTP/2.
Įgalinti HTTP/2
Sukonfigūruokite žiniatinklio serverį, kad įgalintumėte HTTP/2 puslapiams, teikiamiems iš Laravel. Apache galite naudoti modulį mod_http2, o Nginx atveju turite nustatyti nghttpx.
Sukonfigūravus žiniatinklio serverį palaikyti HTTP/2, jūsų Laravel programa naudos šį protokolą įkeldama išteklius ir bendraudama su serveriu. Tai pagerina našumą ir pagerina vartotojo patirtį naršyklėse, kurios palaiko HTTP/2.