Att ändra en använd .NET HttpClient-proxyhandler kan misslyckas
Håll .NET-proxyroutningen stabil under samtidiga begäranden i stället för att ändra handleregenskaper efter användning.
Konfigurera .NET-handlerroutningen före första användningen. Att ange Proxy eller UseProxy efter att begäranden har börjat kan kasta InvalidOperationException.
| Ändring | Vad den inte ger |
|---|---|
| Skriva om en använd handleregenskap | En stödd begärandelokal ruttbrytare |
Ändra tilldelad WebProxy.Address | Atomiskt val för samtidiga begäranden eller flytt av poolade anslutningar |
Placera ett globalt aktuellt värde inuti IWebProxy | En definierad samtidighetspolicy enbart genom att flytta tillståndet |
För en begränsad uppsättning rutter, behåll återanvändbara klienter/handlergrupper kopplade till dessa policyer och välj klienten före sändning. En anpassad IWebProxy kan fatta avsiktliga, samtidighetssäkra beslut, men ett muterbart delat skrapvärde förblir tvetydigt.
Begränsa ruttklienter och pågående arbete efter destinationer, varaktighet, anslutningens livslängd och OS-gränser. Fler rutter lägger till pooler/sockets, så antalet proxyservrar i ett benchmark är inte en kapacitetsgaranti.
Ett nytt försök via en annan proxy är ett annat begränsat försök med sin egen klient/resultat. För inskickningar, behåll möjligheten att den första begäran behandlades innan dess svar försvann.