Змена выкарыстанага .NET HttpClient proxy handler можа не ўдасца
Захоўвайце стабільную маршрутызацыю .NET proxy падчас адначасовых запытаў, замест змены ўласцівасцей handler пасля выкарыстання.
Наладзьце маршрутызацыю .NET handler да першага выкарыстання. Усталяванне Proxy або UseProxy пасля пачатку запытаў можа выклікаць InvalidOperationException.
| Змена | Што гэта не дае |
|---|---|
| Перапісаць уласцівасць выкарыстанага handler | Падтрыманы пераключальнік маршруту ў межах запыту |
Змяніць прызначаны WebProxy.Address | Атамарны выбар для адначасовых запытаў або перамяшчэнне пулізаваных злучэнняў |
Змясціць глабальнае бягучае значэнне ў IWebProxy | Вызначаную палітыку адначасовасці проста праз перанос стану |
Для абмежаванага набору маршрутаў трымайце шматразова выкарыстоўваемыя кліенты/групы handler, звязаныя з гэтымі палітыкамі, і выбірайце кліент перад адпраўкай. Уласны IWebProxy можа рабіць наўмысныя, бяспечныя для адначасовасці рашэнні, але зменлівае агульнае часоввае значэнне застаецца неадназначным.
Абмяжуйце кліенты маршрутаў і работу ў працэсе па прызначэннях, працягласці, часу жыцця злучэння і лімітах АС. Больш маршрутаў дадае пулы/сокеты, таму колькасць proxy у бенчмарку не з'яўляецца гарантыяй ёмістасці.
Паўтор праз іншы proxy — гэта яшчэ адна абмежаваная спроба з уласным кліентам/вынікам. Для адпраўленняў захоўвайце магчымасць таго, што першы запыт быў апрацаваны да знікнення яго адказу.