Pagbagal ng proxy sa paglipas ng panahon: suriin ang conntrack at mga limitasyon ng resource
Siyasatin ang presyur ng pagsubaybay sa koneksyon kasama ang mga limitasyon ng resource ng proxy at host kapag nag-iipon ang mga pagkabigo sa paglipas ng panahon.
Tumutugon ang proxy pagkatapos ng restart. Makalipas ang ilang oras, natigil ang mga bagong koneksyon. Ang isa pang restart ay bumibili ng isa pang tahimik na agwat. Ang pattern na iyon ay nagpapahiwatig ng umiipon na estado, ngunit hindi tinutukoy kung aling estado ang may pananagutan.
Sa isang landas ng Linux na gumagamit ng pagsubaybay sa koneksyon, isang kandidato ang talahanayan ng conntrack. Suriin ang mga umiiral na halagang ito sa makina at sa namespace ng network na humahawak sa trapiko:
/proc/sys/net/netfilter/nf_conntrack_count
/proc/sys/net/netfilter/nf_conntrack_maxAng una ay nag-uulat ng mga inilaan na entry ng daloy; ang pangalawa ay naglilimita sa mga ito. Hindi ito bilang ng mga gumagamit ng Squid o mga kahilingang HTTP. Ang estado ng daloy ng kernel ay maaaring mabuhay nang mas matagal kaysa sa aktibong gawain ng aplikasyon.
Maghanap ng kaugnayan, hindi lamang malaking bilang
Ihambing ang pagpuno sa paglipas ng panahon sa pagsisimula ng mga pagkabigo sa mga bagong koneksyon at sa mga kaugnay na mensahe ng kernel. Ang mataas na bilang na walang tugmang ebidensya ng pagkabigo ay iba sa isang talahanayang paulit-ulit na umabot sa limitasyon nito sa sandaling magsimulang mag-expire ang mga kahilingan.
Maaaring maglingkod ang talahanayan nang higit pa sa proxy. Ang iba pang lokal na serbisyo, naipadalang trapiko o iba pang abalang landas ng network ay maaaring mag-ambag. Ang pag-restart ng proxy na nagbabago sa sintomas ay hindi nagpapatunay na ang cache ng object ng Squid ang naging sanhi.
Panatilihing nasa paningin ang mga katunggaling paliwanag: mga deskriptor ng file, mga pila ng mga katulong sa pagpapatotoo, mga pagkaantala ng DNS, presyur ng memorya at punong filesystem ay maaari ring lumala sa paglipas ng panahon. Itala kung aling resource ang lumalaki at aling mga operasyon ang unang huminto sa paggana. Ang pagiging buhay ng mga pangmatagalang koneksyon habang nabibigo ang mga bago ay kapaki-pakinabang na ebidensya, hindi diagnosis sa sarili nito.
Ang pagtaas ng limitasyon ay may gastos sa memorya. Bago baguhin ito, itatag ang karga ng trabaho, namespace at magagamit na kapasidad. Ang walang taros na pagpapaikli ng mga timeout ay maaaring makasira ng mga kapaki-pakinabang na idle session; ang paglilinis ng lahat ng estado ng koneksyon ay maaaring makagambala sa walang kaugnayang trapiko.
Ang kapaki-pakinabang na resulta ay isang paliwanag para sa pag-iipon at isang pagbabago sa kapasidad o lifecycle na umaangkop dito. Ligtas na itaas ay hindi isang katangiang pinagsasaluhan ng bawat server ng proxy.