HttpQuery.KeepAlive

redirigé depuis HttpQuery.SetKeepAlive

HttpQuery = class static (TObject)Interface de HttpQueryExemples de HttpQuery

Qubes 9.0 Contrôle de la persistence et de la réutilisation des connexions

Syntaxe

property KeepAlive: Boolean read GetKeepAlive write SetKeepAlive

Remarques

Quand cette propriété est à True, la persistence et la réutilisation des connexions HTTP est activée. Ce réglage est généralement préférable, car il évite d'avoir à établir de nouvelles connexions pour chaque nouvelle requête à un même serveur. Dans le cas de requête à haute fréquence, il permet d'éviter d'épuiser les numéros de port client TCP locaux.

Cependant, cela maintient une connexion TCP pendant 1 à 2 minutes, ce qui pour des serveurs web historiques (Apache ou Tomcat notamment) peut être problématique, car ils sont limités en nombre de connexions TCP simultanées. Les serveurs web modernes tels que nginx, nodejs, IIS ou QubesExpress seront plus performants si KeepAlive est à True.

A partir des version Qubes ultérieures au 2021-10-01, cette option est à True par défaut, elle était à False par défaut auparavant.

Exemples

// deactivate keep alive before making request to a legacy server
HttpQuery.KeepAlive := False;

var data := '';
PrintLn(HttpQuery.GetData('http://old-web-server.here/whatever.php', data));
PrintLn(data.Length);

Classification

System.Net HttpQuery