HTTP/2

Protokoller ve Standartlar
HTTP/1.1’e göre çoklama, başlık sıkıştırma ve daha iyi performans sunan önemli HTTP sürümü.
← Sözlüğe Dön

HTTP/2 nedir?

HTTP/2, RFC 7540 ile standartlaştırılmış, HTTP protokolünün önemli bir sürümüdür. HTTP/1.1'e kıyasla web performansını büyük ölçüde artırmak için ikili çerçeveleme, çoklama, başlık sıkıştırması ve sunucu gönderimi sunar.

HTTP/2 ve HTTP/1.1 karşılaştırması

ÖzellikHTTP/1.1HTTP/2
BiçimMetin tabanlıİkili
BağlantılarBirden çok (ana bilgisayar başına 6-8)Tek, çoklanmış bağlantı
İstek işlemeSıralıParalel akışlar
Başlık sıkıştırmasıYokHPACK sıkıştırması
Sunucu gönderimiKullanılamazDesteklenir
ÖnceliklendirmeYokAkış öncelikleri

HTTP/2 nasıl çalışır?

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

Temel özellikler

İkili çerçeveleme katmanı

HTTP/2 Frame Structure:

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

│ Length (24 bits) │

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

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

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

│ Stream Identifier (32 bits) │

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

│ Frame Payload (variable) │

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

HPACK başlık sıkıştırması

SenaryoHTTP/1.1 başlıklarıHTTP/2 başlıkları
İlk istek~800 bayt~800 bayt
Sonraki isteklerHer biri ~800 bayt~20-50 bayt (indeksli)

Akış önceliklendirmesi

Priority Tree:

Root (connection)

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

├── JavaScript (weight: 220)

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

Sunucu gereksinimleri

SunucuHTTP/2 desteği
nginx1.9.5+
Apache2.4.17+ (mod_http2)
Node.js8.4+ (yerel)
IISWindows 10/Server 2016+

Performans yararları

En iyi uygulamalar

1. TLS'i etkinleştirin: HTTP/2 pratikte HTTPS gerektirir (tarayıcılar bunu zorunlu tutar)

2. Alan adı parçalamayı azaltın: Birden fazla alan adı artık performansı düşürür

3. Dosyaları birleştirmeyi bırakın: Çoklama, paketlemeyi daha az gerekli kılar

4. Sunucu gönderimini dikkatle kullanın: Yalnızca kritik kaynakları gönderin

5. Performansı izleyin: HTTP/2'nin kendi kullanım senaryonuzu iyileştirdiğini doğrulayın

HTTP/2, ağ bağlantılarının daha verimli kullanılması sayesinde çoğu web sitesi için belirgin performans iyileştirmeleri sağlar.

Bu Bilgiyi Uygulamaya Koyun

Alan adı uygunluğunu, durumunu ve daha fazlasını kontrol etmek için DomScan API'sini kullanın.