HTTP/2
HTTP/2 ist eine Weiterentwicklung des HTTP-1.1-Protokolls; es versucht im Wesentlichen,
bei der Nutzung von Netzwerken effizienter zu sein. Die Semantik ist dieselbe, daher ist es
darauf ausgelegt, mit älteren Protokollen kompatibel zu sein.
HTTP 1.1 Limitations
HTTP 1.1 ist darauf beschränkt, eine Anfrage pro Verbindung zu verarbeiten, daher verwenden Clients üblicherweise
mehr als eine Verbindung, um Dateien von Servern anzufordern. Aber
dies wirft ein Problem auf, denn wenn zu viele TCP-Verbindungen offen sind,
gibt es einen Wettlauf zwischen den Clients um die Nutzung der Server-Ressourcen, und die Leistung
wird immer geringer, je mehr Clients sich mit Servern verbinden.
Hauptfunktionen
- HTTP/2 ist ein binäres Protokoll (denken Sie daran,
dass HTTP 1.1 ein Textprotokoll ist).
- HTTP/2 funktioniert über TLS und ALPN.
- Es ist gemultiplext (ermöglicht es Ihnen, mehr
als eine Anfrage über eine einzige TCP-Verbindung zu senden).
- Der Server kann Antworten an Clients pushen.
- Reduziert die Round-Trip-Zeiten, sodass Clients
schneller laden können.
HTTP/2 führt weitere Verbesserungen ein, weitere Details: RFC7540.
HTTP/2 erfordert unsere benutzerdefinierte Indy-Version, da
es das ALPN-Protokoll erfordert.
Komponenten
- TsgcHTTP2Client: Client-Komponente, die das HTTP/2-Protokoll
vollständig unterstützt (sgcWebSockets 100 % Pascal-Code, ohne externe Bibliotheken).
- TsgcWebSocketHTTPServer:
Server-Komponente, die das HTTP/2-Protokoll vollständig unterstützt (sgcWebSockets
100 % Pascal-Code, ohne externe Bibliotheken). Standardmäßig ist HTTP/2
deaktiviert; Sie können es über die Eigenschaft HTTPOptions aktivieren und Enable
= true setzen.
- TsgcWebSocketServer_HTTPAPI:
Server-Komponente, die das HTTP/2-Protokoll unterstützt (Microsoft-Implementierung
und erfordert Windows 2016+ oder Windows 10+).
- DataSnap-
Server: Der DataSnap-Server kann auch das HTTP/2-Protokoll unterstützen.
APIs
- Apple Push Notifications: übermittelt benutzerseitige Benachrichtigungen von einem Server-Anbieter an das Gerät des Benutzers.