Օգտագործված .NET HttpClient proxy handler-ի փոփոխությունը կարող է ձախողվել
Պահպանեք .NET proxy-ի երթուղավորումը կայուն միաժամանակյա հարցումների ընթացքում՝ օգտագործելուց հետո handler-ի հատկությունները փոխելու փոխարեն։
Կարգավորեք .NET handler-ի երթուղավորումը մինչ առաջին օգտագործումը։ Proxy կամ UseProxy սահմանելը հարցումները սկսվելուց հետո կարող է առաջացնել InvalidOperationException։
| Փոփոխություն | Ինչ չի ապահովում |
|---|---|
| Օգտագործված handler-ի հատկության վերագրանցում | Աջակցվող հարցում-տեղային երթուղու անջատիչ |
Նշանակված WebProxy.Address-ի փոփոխում | Ատոմար ընտրություն միաժամանակյա հարցումների համար կամ լողավազանային միացումների տեղափոխում |
Գլոբալ ընթացիկ արժեքի տեղադրում IWebProxy-ի ներսում | Սահմանված միաժամանակության քաղաքականություն միայն վիճակը տեղափոխելով |
Երթուղիների սահմանափակ հավաքածուի համար պահեք այդ քաղաքականությունների հետ կապված վերօգտագործվող կլիենտներ/handler խմբեր և ընտրեք կլիենտը ուղարկելուց առաջ։ Հատուկ IWebProxy-ն կարող է դիտավորյալ, միաժամանակության առումով անվտանգ որոշումներ կայացնել, սակայն փոփոխական ընդհանուր օժանդակ արժեքը մնում է երկիմաստ։
Սահմանափակեք երթուղու կլիենտները և ընթացիկ աշխատանքը ըստ նպատակակետերի, տևողության, միացման կյանքի և ՕՀ սահմանների։ Ավելի շատ երթուղիներ ավելացնում են լողավազաններ/սոկետներ, ուստի բենչմարկի proxy-ների քանակը հզորության երաշխիք չէ։
Մեկ այլ proxy-ի միջոցով կրկնփորձը ևս մեկ սահմանափակ փորձ է՝ իր կլիենտով/արդյունքով։ Ուղարկումների համար պահպանեք այն հնարավորությունը, որ առաջին հարցումը մշակվել է նախքան դրա պատասխանի անհետանալը։