การเปลี่ยน proxy handler ของ .NET HttpClient ที่ใช้แล้วอาจล้มเหลว
รักษาการกำหนดเส้นทางพร็อกซีของ .NET ให้เสถียรระหว่างคำขอที่เกิดขึ้นพร้อมกัน แทนการแก้ไขพร็อพเพอร์ตีของ handler หลังการใช้งาน
กำหนดค่าการกำหนดเส้นทาง handler ของ .NET ก่อนการใช้งานครั้งแรก การตั้งค่า Proxy หรือ UseProxy หลังจากคำขอเริ่มแล้วอาจทำให้เกิด InvalidOperationException
| การเปลี่ยนแปลง | สิ่งที่ไม่ได้ให้ |
|---|---|
| เขียนพร็อพเพอร์ตีของ handler ที่ใช้แล้วใหม่ | สวิตช์เส้นทางภายในคำขอที่รองรับ |
แก้ไข WebProxy.Address ที่กำหนดไว้ | การเลือกแบบอะตอมมิกสำหรับคำขอที่เกิดขึ้นพร้อมกัน หรือการย้ายการเชื่อมต่อที่รวมกลุ่มไว้ |
วางค่าปัจจุบันระดับโลกไว้ใน IWebProxy | นโยบายความพร้อมกันที่กำหนดไว้เพียงด้วยการย้ายสถานะ |
สำหรับชุดเส้นทางที่จำกัด ให้เก็บ ไคลเอ็นต์/กลุ่ม handler ที่ใช้ซ้ำได้ซึ่งเชื่อมโยงกับนโยบายเหล่านั้น และเลือกไคลเอ็นต์ก่อนส่ง IWebProxy ที่กำหนดเองสามารถตัดสินใจอย่างจงใจและปลอดภัยต่อความพร้อมกันได้ แต่ค่าชั่วคราวที่ใช้ร่วมกันซึ่งเปลี่ยนแปลงได้ยังคงคลุมเครือ
จำกัดไคลเอ็นต์เส้นทางและงานที่กำลังดำเนินการตามปลายทาง ระยะเวลา อายุการเชื่อมต่อ และขีดจำกัดของ OS เส้นทางที่มากขึ้นจะเพิ่มพูล/ซ็อกเก็ต ดังนั้นจำนวนพร็อกซีในการวัดประสิทธิภาพจึงไม่ใช่การรับประกันความจุ
การลองใหม่ผ่านพร็อกซีอื่นเป็นการลองแบบจำกัดอีกครั้งพร้อมไคลเอ็นต์/ผลลัพธ์ของตัวเอง สำหรับการส่ง ให้คงความเป็นไปได้ที่คำขอแรกได้รับการประมวลผลก่อนที่การตอบกลับจะหายไป