Skadimet e kohës së proxy-t në curl: gjeni hapin që dështoi
Dalloni lidhjen me proxy-n, negocimin e tunelit, TLS dhe një përgjigje të ngecur që kufijtë kohorë të curl të ndihmojnë diagnostikimin.
Gjeni veprimin e fundit të përfunduar në daljen e hollësishme të curl. “U lidh me proxy-n, por nuk ka përgjigje CONNECT” e ngushton problemin shumë më tepër se “proxy-t i skadoi koha”.
Përdorni një kërkesë me kufij kohorë, duke zëvendësuar shembullin lokal me proxy-n tuaj HTTP; lista e proxy-ve HTTP jep pika të tjera fundore për krahasim:
curl --noproxy '' --proxy http://127.0.0.1:8080 --connect-timeout 5 --max-time 15 --verbose https://example.com/--connect-timeout 5 i jep krijimit të lidhjes një buxhet të përbashkët kohor, përfshirë kërkimet dhe shkëmbimet fillestare përkatëse; nuk jep pesë sekonda për çdo fazë. --max-time 15 kufizon gjithë veprimin, përfshirë transferimin pas krijimit të lidhjes.
| Ku ndalet përparimi | Çfarë të hetoni më pas |
|---|---|
| Nuk ka lidhje me proxy-n | Zgjidhjen e emrit të proxy-t, portën dëgjuese, rrugëzimin dhe rregullat e murit mbrojtës. |
| Proxy i lidhur; pa përgjigje për tunelin | Ngarkesën e proxy-t, negocimin e autentikimit, politikën e hyrjes dhe arritshmërinë e destinacionit nga proxy. |
| Tuneli u pranua; TLS i papërfunduar | Arritshmërinë e destinacionit, negocimin TLS dhe përgjimin e administruar. |
| Mbërrijnë kokat e destinacionit; trupi ngec | Sjelljen e transferimit të serverit origjinë, ruajtjen në bufer nga ndërmjetësit dhe nëse aplikacioni hesht me qëllim. |
Për radhën e shkëmbimeve fillestare, shihni si e transporton CONNECT HTTPS-në. Një ndalim afër buxhetit të lidhjes sugjeron krijimin; një ndalim i mëvonshëm në kufirin e përgjithshëm sugjeron transferim të papërfunduar. Shikoni radhën bashkë me kohën: vetëm koha nuk përcakton përbërësin. Formulimet e regjistrave ndryshojnë ndërmjet ndërtimeve të curl dhe një portë TCP e hapur nuk provon që CONNECT punon.
Mbajeni njërën anë të pandryshuar
Krahasoni të njëjtin destinacion përmes një rruge të drejtpërdrejtë të lejuar:
curl --noproxy '*' --connect-timeout 5 --max-time 15 --verbose https://example.com/Pastaj krahasoni një destinacion tjetër të padëmshëm përmes të njëjtit proxy. Nëse dështon vetëm njëri, hetoni atë rrugë ose politikën e destinacionit. Nëse të gjithë ndalen në të njëjtin hap krijimi, hetoni rrugën e përbashkët të proxy-t. Ruani kohën e fillimit, pikën fundore, destinacionin dhe fazën e fundit të përfunduar; hiqni kredencialet, tokenët, cookies dhe emrat privatë përpara se të ndani regjistrat.
Kur lidhja mbetet e hapur pa përparim të dobishëm
Transferimit të skedarit mund t’i duhet një prag shpejtësie të ulët krahas kufijve të krijimit dhe kohës totale:
curl --noproxy '' --proxy http://127.0.0.1:8080 --connect-timeout 5 --max-time 60 --speed-limit 100 --speed-time 20 https://example.com/Kjo e ndërpret veprimin nëse shpejtësia e qëndrueshme mbetet nën 100 bajtë për sekondë për 20 sekonda, duke ruajtur kufirin total 60 sekonda. Zgjidhni vlera sipas ngarkesës. Një rrjedhë ngjarjesh mund të jetë e shëndetshme gjatë heshtjeve të gjata, ndaj një rregull shkarkimi mund ta ndërpresë gabimisht.
Rritja e të gjithë kufijve e shtyn simptomën. Riprovimet e menjëhershme të përsëritura mund t’i shtojnë lidhje një rruge të mbingarkuar. Diagnostikoni me disa krahasime të menduara; politika e mëvonshme e riprovimit të aplikacionit kërkon buxhetin e vet total dhe vlerësimin nëse përsëritja është e sigurt.