HTTP/2

Protokoll och standarder
En större version av HTTP som introducerar multiplexering, rubrikkomprimering och bättre prestanda än HTTP/1.1.
← Tillbaka till Ordlistan

Vad är HTTP/2?

HTTP/2 är en större vidareutveckling av HTTP-protokollet (standardiserad som RFC 7540) som introducerar binär inramning, multiplexning, headerkomprimering och server push för att avsevärt förbättra webbprestandan jämfört med HTTP/1.1.

HTTP/2 jämfört med HTTP/1.1

FunktionHTTP/1.1HTTP/2
FormatTextbaseratBinärt
AnslutningarFlera (6–8 per värd)En enda med multiplexning
Hantering av förfrågningarSekventiellParallella strömmar
HeaderkomprimeringIngenHPACK-komprimering
Server pushInte tillgängligtStöds
PrioriteringIngenStrömprioriteringar

Så fungerar HTTP/2

HTTP/1.1 (Head-of-Line Blocking):

Connection 1: Request A ──────────► Response A

Connection 2: Request B ──────────► Response B

Connection 3: Request C ──────────► Response C

(Multiple connections, sequential per connection)

HTTP/2 (Multiplexing):

Single Connection:

├── Stream 1: Request A ──► Response A

├── Stream 2: Request B ──► Response B

├── Stream 3: Request C ──► Response C

└── All interleaved on same connection

Viktiga funktioner

Lager för binär inramning

HTTP/2 Frame Structure:

┌─────────────────────────────────────┐

│ Length (24 bits) │

├─────────────────────────────────────┤

│ Type (8 bits) │ Flags (8 bits) │

├─────────────────────────────────────┤

│ Stream Identifier (32 bits) │

├─────────────────────────────────────┤

│ Frame Payload (variable) │

└─────────────────────────────────────┘

HPACK-headerkomprimering

ScenarioHTTP/1.1 HeadersHTTP/2 Headers
First request~800 bytes~800 bytes
Subsequent requests~800 bytes each~20-50 bytes (indexed)

Prioritering av strömmar

Priority Tree:

Root (connection)

├── CSS (weight: 256, high priority)

├── JavaScript (weight: 220)

└── Images (weight: 110, lower priority)

Serverkrav

ServerHTTP/2-stöd
nginx1.9.5+
Apache2.4.17+ (mod_http2)
Node.js8.4+ (native)
IISWindows 10/Server 2016+

Prestandafördelar

Bästa metoder

1. Aktivera TLS: HTTP/2 kräver i praktiken HTTPS (webbläsare tvingar fram det)

2. Minska domänuppdelningen: Flera domäner försämrar nu prestandan

3. Sluta slå ihop filer: Multiplexning gör paketering mindre nödvändig

4. Använd server push försiktigt: Skicka bara kritiska resurser

5. Övervaka prestandan: Kontrollera att HTTP/2 förbättrar just ditt användningsfall

HTTP/2 ger betydande prestandaförbättringar för de flesta webbplatser genom effektivare användning av nätverksanslutningar.

Använd Denna Kunskap

Använd DomScans API för att kontrollera domäntillgänglighet, hälsa och mer.