هندلهای cURL در PHP و استفاده مجدد از اتصالهای پراکسی
حفظ حافظه نهان اتصالهای libcurl را از تضمین زنده ماندن یک اتصال TCP از طریق پراکسی جدا کنید.
نگه داشتن یک هندل cURL میتواند به انتقالهای بعدی اجازه دهد از اتصالهای سازگار ذخیرهشده در حافظه نهان دوباره استفاده کنند. اما نمیتواند پراکسی را مجبور کند اتصال TCP را نامحدود باز نگه دارد.
طرف مقابل میتواند اتصال بیکار را ببندد، مسیر شبکه میتواند ناپدید شود و انتقال بعدی ممکن است به مسیر یا تونل دیگری نیاز داشته باشد. استفاده مجدد یک بهینهسازی سمت کلاینت است که تابع این شرایط است، نه تضمین دسترسپذیری.
برای کار تکراری از طریق یک سیاست پراکسی، هندل مربوطه یا حافظه نهان اتصالهای multi-handle را زنده نگه دارید و از گزینههایی که آگاهانه اتصال جدید میخواهند یا استفاده مجدد را ممنوع میکنند دوری کنید، مگر اینکه کار به آنها نیاز داشته باشد. پیش از آنکه فرض کنید درخواست دوم کوتاهتر ثابت میکند استفاده مجدد رخ داده، رفتار واقعی انتقال را بررسی کنید.
مراقب نمونههای قدیمی PHP باشید که میگویند اتصال "تا curl_close" باز میماند. مستندات PHP میگوید curl_close() از PHP 8.0 به بعد هیچ اثری ندارد و از PHP 8.5 به بعد منسوخ است. مالکیت منابع و طول عمر اشیا را باید در نسخه PHP که مستقر میکنید درک کنید.
تایمری که برای گرم نگه داشتن پراکسی درخواستهای تکراری میفرستد، ترافیک اضافه میکند و باز هم نمیتواند مانع بسته شدن نقطه پایانی دور شود. مدیریت معمول اتصال، درخواستهای محدود و قواعد روشن برای تلاش دوباره را به وعدهای که یک اتصال پراکسی همیشه باقی میماند ترجیح دهید.