Parallele HTTP-Anfragen werden von der Windows-Registrierung blockiert
Sie versuchen, mehrere HTTP-Anfragen gleichzeitig in Ihrer Anwendung auszuführen, aber Ihre Leistung ist eingeschränkt. Bei der Untersuchung potenzieller Engpässe haben Sie festgestellt, dass Windows möglicherweise Beschränkungen für gleichzeitige Anforderungen vorschreibt.
Um dieses Problem zu beheben, haben Sie den Rat befolgt, Registrierungswerte im Zusammenhang mit Verbindungsbeschränkungen zu ändern. Trotz der Anpassungen und des Neustarts Ihres Computers arbeitet Ihre Anwendung jedoch immer noch mit nur zwei TCP-Verbindungen, was ihren Durchsatz begrenzt.
Es stellt sich die Frage: Warum funktioniert die Registrierungsänderung nicht?
Die Die Informationen in dem Blog-Beitrag, auf den Sie verwiesen haben, sind nicht ganz korrekt. Die genannten Registrierungsschlüssel MaxConnectionsPerServer und MaxConnectionsPer1_0Server stehen nicht in direktem Zusammenhang mit der Anzahl gleichzeitig zulässiger Verbindungen. Stattdessen steuern diese Schlüssel die maximale Anzahl von Verbindungen, die zu einem bestimmten Server offen gehalten werden können.
Um die maximale Anzahl gleichzeitiger Verbindungen zu steuern, sollten Sie die Eigenschaft ServicePointManager.DefaultConnectionLimit verwenden. Mit dieser Eigenschaft können Sie die maximale Anzahl von Verbindungen angeben, die ein ServicePoint-Objekt haben kann. Standardmäßig ist dieses Limit auf 2 eingestellt.
Um das Verbindungslimit zu erhöhen, setzen Sie einfach die Eigenschaft DefaultConnectionLimit auf den gewünschten Wert. Hier ist ein Beispiel:
ServicePointManager.DefaultConnectionLimit = 20;
Diese Änderung erhöht das gleichzeitige Verbindungslimit für alle über Ihre Anwendung gestellten HTTP-Anfragen, sodass Sie den gewünschten Durchsatz erreichen können.
Das obige ist der detaillierte Inhalt vonWarum führt meine Registrierungsänderung nicht zu einer Zunahme paralleler HTTP-Anfragen in Windows?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!