HTTP/2
HTTP/2, HTTP 1.1 protokolünün bir evrimidir, temel olarak ağları kullanırken daha verimli
olmaya çalışır. Anlambilim aynıdır, bu nedenle eski protokollerle uyumlu olacak şekilde
tasarlanmıştır.
HTTP 1.1 Sınırlamaları
HTTP 1.1, bağlantı başına yalnızca bir isteği işlemekle sınırlıdır, bu nedenle
istemciler genellikle sunuculardan dosya istemek için birden fazla bağlantı kullanır. Ancak
bu bir soruna yol açar, çünkü çok fazla açık TCP bağlantısı olduğunda,
istemciler arasında sunucu kaynaklarını kullanmak için bir yarış oluşur ve performans
daha fazla istemci sunuculara bağlandıkça giderek düşer.
Main features
- HTTP/2 ikili bir protokoldür (HTTP 1.1'in bir metin protokolü olduğunu unutmayın).
- HTTP/2, TLS ve ALPN üzerinden çalışır.
- Çoğullanmıştır (multiplexed) (tek bir TCP Bağlantısı üzerinden birden
fazla istek göndermenize olanak tanır).
- Sunucu, istemcilere yanıtlar gönderebilir (push).
- Round Trip Time'ları azaltır, böylece istemciler
daha hızlı yüklenebilir.
HTTP/2 başka iyileştirmeler de sunar, daha fazla ayrıntı: RFC7540.
HTTP/2, ALPN protokolü gerektirdiği için özel Indy sürümümüzü gerektirir.
Bileşenler
- TsgcHTTP2Client: HTTP/2 protokolünü tam olarak destekleyen istemci bileşeni
(sgcWebSockets %100 Pascal kodu, harici kütüphaneler olmadan).
- TsgcWebSocketHTTPServer:
HTTP/2 protokolünü tam olarak destekleyen sunucu bileşeni (sgcWebSockets
%100 Pascal kodu, harici kütüphaneler olmadan). Varsayılan olarak HTTP/2
devre dışıdır, HTTPOptions özelliğini kullanarak ve Enable
= true olarak ayarlayarak etkinleştirebilirsiniz.
- TsgcWebSocketServer_HTTPAPI:
HTTP/2 protokolünü destekleyen sunucu bileşeni (Microsoft uygulaması
ve Windows 2016+ veya Windows 10+ gerektirir).
- DataSnap
Sunucuları: datasnap sunucusu HTTP/2 protokolünü de destekleyebilir.
API'ler