PHP cURL-håndtak og gjenbruk av proxyforbindelser
Skill mellom å beholde libcurls tilkoblingsbuffer og en garanti for at en TCP-forbindelse via en proxy holder seg i live.
Å beholde et cURL-håndtak kan la senere overføringer gjenbruke kompatible bufrende forbindelser. Det kan ikke tvinge en proxy til å holde en TCP-forbindelse åpen på ubestemt tid.
Motparten kan lukke en inaktiv forbindelse, en nettverksvei kan forsvinne, og en senere overføring kan trenge en annen rute eller tunnel. Gjenbruk er en klientoptimalisering underlagt disse vilkårene, ikke en tilgjengelighetsgaranti.
For gjentatt arbeid gjennom én proxy-policy, hold det relevante håndtaket eller multi-handle-tilkoblingsbufferen i live og unngå alternativer som bevisst ber om nye forbindelser eller forbyr gjenbruk, med mindre oppgaven trenger dem. Undersøk den faktiske overføringsatferden før du antar at en kortere andre forespørsel beviser gjenbruk.
Vær forsiktig med gamle PHP-eksempler som sier at forbindelsen holder seg åpen «til curl_close». PHP dokumenterer at curl_close() ikke har noen effekt siden PHP 8.0 og er utdatert fra PHP 8.5. Ressurseterskap og objektlevetid må forstås i PHP-versjonen du distribuerer.
En timer som sender gjentatte forespørsler for å holde proxyen varm, legger til trafikk og kan fortsatt ikke hindre at det eksterne endepunktet lukker. Foretrekk normal tilkoblingsstyring, tidsbegrensede forespørsler og klare regler for nye forsøk fremfor et løfte om at én proxyforbindelse alltid vil overleve.