Tech

Gyorsul a WordPress: megérkezett a HTTP/2 támogatás

By May 17, 2018 No Comments

Büszkén jelentjük, teszteltük és beállítottuk az új HTTP/2 protokollt az összes környezetre, weboldalra és előfizetői csomagra. Mostantól hivatalosan biztosítunk HTTP/2 támogatást a teljes Managed WordPress Hosting platformunkon. A HTTP/2 a web egy alapvető protokollja, melyen minden végrehajtott továbbfejlesztés jelentős hatással bír a WordPress teljesítményére is.

A HTTP radikális változáson ment keresztül, hogy megfeleljen a modern világ igényeinek. Elődeivel ellentétben már nem szöveg, hanem bináris adat alapú. Bár ezzel megszakad a telnettel és más hasonló szöveges klienssel való kompatibilitás, a protokollt számos továbbfejlesztéssel és új képességekkel látták el.

 

 

A HTTP/2 előnyei

 

Multiplexelés

 

Kétség nem fér hozzá, ma mindenki a HTTP/2 új multiplex képességeiről beszél. A mulitplexingnek köszönhetően több kérés és válasz is történhet azonos csatornán. A HTTP/1.1 szabvány esetében a böngésző előbb a HTML, majd a CSS file-t töltené le, amit a JavaScript file követne, majd ezután következne a többi összetevő. Miután a legtöbb művelet a webszerveren fut, a böngészők pedig nagyon gyorsak, problémát jelentett, hogy az erőforrások növekedésével a kérések és válaszok száma is megugrott.

Ezt csillapítandó, a böngészők több kapcsolatot nyitottak, de ez azzal járt, hogy kezelésük bonyolultabbá vált a böngészők és a szerverek számára is.

A HTTP/2 szabvány több kérés indítását is lehetővé teszi kezdőpontonként egy csatornán belül. Ez azt jelenti, hogy a böngésző szimultán kérhet több erőforrást újabb kapcsolatok létrehozása nélkül. A böngészőnek lehetősége van a válaszok visszaküldésére, lekérdezésére és eltérő sorrendben való feldolgozására is.

Ez óriási rugalmasságot és hatékonyságot biztosít a protokoll számára. Az Akamai-féle HTTP/2 demóval kipróbálható, hogy működik a multiplexelés. Egyszerűen kideríthető, hogy egy weboldal támogatja-e a HTTP/2 protokollt. Ehhez meg kell nyitni a Developer Tools funkciót, csatlakozni kell a weboldalhoz, ahol a Protocol oszlopban megjelenő “h2” bejegyzés jelzi a kompatibilitást.

Bináris kommunikáció

Ahogy az elején említettük, a HTTP/2 már nem szöveg alapú, hanem teljes mértékben bináris kommunikációs protokollnak számít. Ez azzal is jár, hogy már nem lehetséges 80-as porton telnetet használni, HTTP parancsokat indítani vagy a szervertől érkező válaszokat fogadni.

Kínál viszont más nagyszerű dolgokat: bináris kommunikáció nélkül nem volna lehetséges a multiplexelés, valamint a bináris protokollt a gépek is könnyebben értelmezhetik, valamint méretét tekintve is kompaktabb.

Server Push

Ez egy olyan új funkció, melynek segítségével a szerver erőforrásokat küldhet a böngészőnek anélkül hogy azt az utóbbi kimondottan kérte volna. Normális esetben a böngésző először lekérne, majd letöltene egy HTML file-t, majd annak értelmezése után küldene további kéréseket a HTML file-on belül hivatkozott erőforrásokra (pl. CSS, JavaScript, stb.).

A HTTP/2 Server Push funkciónál konfigurálható, hogy ha a szerver egy index.html file-ra vonatkozó kérést regisztrál, akkor más file-okat is küldjön anélkül, hogy ezt a böngésző kifejezetten kérné.

Van azonban pár apróság, amire oda kell figyelni. Először is, nem minden web szerver támogatja, és nem is varázsszer. Helytelen használat esetén hibás működést okozhat, ami hatással lehet a WordPress működésére is. A szerver nem tudja, mit tárol a böngésző cache memóriája, így redundáns adatokat is küldhet.

Tömörített fejlécek

A bináris protokoll további előnye még, hogy a fejléc jobban tömöríthető. Ez egy fejléc referenciákat tartalmazó dictionary of headers segítségével érhető el, aminek eredményeképpen a böngésző és a szerver kevesebb hálózati erőforrással is beéri, mikor a fejléceket küldözgeti oda és vissza.

Ez egy egyszerű ötleten alapul:

A szótár egy adatstruktúra. Értékeket tartalmaz, amiket egy kulcs segítségével lehet kikeresni. Ez a szótár két részből áll, egy statikusból és egy dinamikusból. A statikus rész egy 61 gyakori fejlécből álló, előre definiált halmazból áll. A böngésző és a szerver által először generált kéréseket és válaszokat a szótár eltárolja, amikhez kulcsként egy short value-t rendel. Legközelebb aztán, mikor a böngésző vagy a szerver egy olyan fejlécet küldene, ami szerepelt a szótárban, akkor a teljes fejléc helyett csak a hivatkozásként használt short value-t küldi el.

Ez talán nem hangzik akkora nagy durranásnak, hiszen a fejlécek általában nem tesznek ki 1K-t sem, és sokszor ismétlődnek is. Mégis, a technikával hosszú távon jelentős megtakarítás érhető el.

HTTP/2 támogatás a PRS.Hosting-nál

 

Korábban foglalkoztunk már a technikai adóssággal, mint az informatikai projektek egyik legfőbb problémájával. A technológiák hamar elavulnak, nyomukban pedig olyan projektek maradnak, melyeket nehézkes fenntartani és amikhez nehéz szakértőket fogni. A mi Managed WordPress Hosting platformunk mindig naprakész, mindig a legfrissebb technológiákat használja. De ez nem pusztán az újdonságok kedvéért történik. Mérnökként úgy hozzuk meg döntéseinket, hogy a platformunk úgy legyen naprakész és stabil, hogy közben jövőbeli fejleszthetőségét is megőrizze.

Soha többet nem lesz gondod a technológiával. Mint mindig, a HTTP/2 beindítása után is ugyanazt az őszinte és átlátható támogatást kapod meg, ami összeforrt a márkanevünkkel.

Hisszük, hogy a HTTP/2 egy új fejezetet jelent a modern Internet világában. A célunk pedig az, hogy erre a mi infrastruktúránk és a te vállalkozásod is készen álljon.