cURL handle ของ PHP และการนำการเชื่อมต่อพร็อกซีกัลับมาใช้ใหม่
แยกแยะการเก็บแคชการเชื่อมต่อของ libcurl ออกจากการรับประกันว่าการเชื่อมต่อ TCP ผ่านพร็อกซีจะยังคงอยู่
การเก็บ cURL handle ไว้อาจทำให้การถ่ายโอนที่ตามมา นำการเชื่อมต่อที่แคชไว้ซึ่งเข้ากันได้กลับมาใช้ใหม่ แต่ก็ไม่สามารถบังคับให้พร็อกซีรักษาการเชื่อมต่อ TCP ให้เปิดอยู่ตลอดไปได้
อีกฝ่ายอาจปิดการเชื่อมต่อที่ไม่ได้ใช้งาน เส้นทางเครือข่ายอาจหายไป และการถ่ายโอนในภายหลังอาจต้องใช้เส้นทางหรืออุโมงค์อื่น การนำกลับมาใช้ใหม่เป็นการปรับแต่งฝั่งไคลเอนต์ที่ขึ้นอยู่กับเงื่อนไขเหล่านี้ ไม่ใช่การรับประกันความพร้อมใช้งาน
สำหรับงานที่ทำซ้ำผ่านนโยบายพร็อกซีเดียว ให้คง handle ที่เกี่ยวข้องหรือแคชการเชื่อมต่อแบบ multi-handle ไว้ และหลีกเลี่ยงตัวเลือกที่ขอการเชื่อมต่อใหม่โดยเจตนาหรือห้ามการนำกลับมาใช้ใหม่ เว้นแต่งานต้องการ ตรวจสอบพฤติกรรมการถ่ายโอนจริงก่อนสรุปว่าคำขอที่สองที่สั้นกว่าพิสูจน์การนำกลับมาใช้ใหม่
ระวังตัวอย่าง PHP เก่าที่บอกว่าการเชื่อมต่อยังเปิดอยู่ "จนถึง curl_close" เอกสารของ PHP ระบุว่า curl_close() ไม่มีผลใด ๆ ตั้งแต่ PHP 8.0 และเลิกใช้แล้วตั้งแต่ PHP 8.5 ต้องทำความเข้าใจความเป็นเจ้าของทรัพยากรและอายุของออบเจ็กต์ใน PHP เวอร์ชันที่คุณติดตั้งใช้งาน
ตัวจับเวลาที่ส่งคำขอซ้ำเพื่อให้พร็อกซีอุ่นจะเพิ่มทราฟฟิกและยังไม่สามารถป้องกันไม่ให้ปลายทางระยะไกลปิดได้ ให้เลือกการจัดการการเชื่อมต่อตามปกติ คำขอที่มีขอบเขตเวลา และกฎการลองใหม่ที่ชัดเจน แทนสัญญาว่าการเชื่อมต่อพร็อกซีหนึ่งรายการจะอยู่รอดเสมอ