Biðtímavillur milliþjóns: tengingin frýs og gefst svo upp
Updated:
Biðtími sem rennur út er meira pirrandi en aðrar villur vegna þess að hann segir ekkert: engin höfnun, ekkert lykilorðabeini, bara þögn þar til forritið þitt gefst upp. Yfirleitt fara gagnapakkarnir eitthvert og hverfa, eða milliþjónninn samþykkir tenginguna en svarar ekki í tæka tíð. Verkefnið er að komast að því á hvaða stigi þögnin á sér stað.
Þrjár niðurstöður biðtíma sem við mældum
Við settum upp prófunarmilliþjón sem tekur við TCP-tengingum en svarar aldrei, og keyrðum svo sömu beiðni með tvenns konar tímamörkum (vistfangi breytt í 203.0.113.10:8080, user123:pass456):
curl --connect-timeout 10 -x http://user123:[email protected]:8080 https://example.comskilarcurl: (28) Proxy CONNECT aborted due to timeout. Þau tímamörk ná aðeins yfir tengingarstigið.- Að nota í staðinn
-m 10(tímamörk á alla gagnaflutninginn) skilarcurl: (28) Connection timed out after 10002 milliseconds. - Chromium sem beint er á sama milliþjón gefur upp
ERR_TIMED_OUT; milliþjónaprófarinn sýnirtimeout.
Orsakir, líklegastar fyrst
- Netið þitt lokar hljóðlega á gátt milliþjónsins. Þráðlaust net á skrifstofum, hótelum og háskólasvæðum hendir oft pökkum sem sendir eru á óvenjulegar gáttir í stað þess að hafna þeim, svo þú bíður endalaust.
- Biðtíminn í kóðanum þínum er of stuttur. Milliþjónn í fjarlægu landi þarf aðeins lengri tíma fyrir handabandið; tímamörk upp á 2–3 sekúndur geta slitið tengingu við milliþjón sem virkar fullkomlega.
- Milliþjónninn eða áfangastaðurinn er ofhlaðinn. Milliþjónninn samþykkir tenginguna en bíður eftir vefsvæðinu, og þolinmæði þín þrýtur á undan.
- Röng IP-tala. Innsláttarvilla sem lendir á vistfangi sem svarar ekki veldur þögn frekar en höfnun.
Lausnir eftir umhverfi
- Windows/Chrome: prófaðu sama milliþjón yfir farsímagögn í símanum þínum. Ef biðtíminn hverfur er upprunalega netið að loka á hann; lestu athugun á milliþjóni og eldvegg.
- Antidetect-vafrar: hnappurinn til að prófa milliþjón hefur venjulega fastan biðtíma. Reyndu aftur nokkrum sinnum, og ef aðeins sumir prófílar bila skaltu bera milliþjónalínu þeirra saman við línu sem virkar.
- Telegram: að festast í tengingu eftir að milliþjónn er virkjaður er oft einnig biðtími sem rennur út; prófaðu milliþjóninn í prófaranum áður en þú breytir Telegram.
- Python requests: sendu
timeout=(10, 30), sem þýðir 10 sekúndur til að tengjast og 30 sekúndur til að lesa. Grípturequests.exceptions.ConnectTimeoutogrequests.exceptions.ReadTimeoutsérstaklega til að sjá hvar hún festist, og bættu við nokkrum endurtekningum með millibili frekar en ótakmörkuðum biðtíma. - curl: notaðu
--connect-timeouttil að mæla tengingarstigið eitt og sér og-mtil að setja þak á alla skipunina.
Útrunninn biðtími eða bara hægur?
Hægur milliþjónn svarar samt, bara seint. Hraðapróf milliþjóns sýnir raunverulegan svartíma; ef hann er nálægt tímamörkum forritsins þíns skaltu hækka mörkin eða velja milliþjón í landi nær áfangastaðnum. Ef endurteknar prófanir fá aldrei svar er um raunverulegan útrunninn biðtíma að ræða, og næsta skref er að opna þjónustubeiðni með niðurstöðu prófarans.
Skref fyrir skref
- 1
Staðfestu útrunninn biðtíma með prófaranum
Límdu milliþjónalínuna inn í milliþjónaprófarann. Niðurstaðan
timeoutþýðir að ekkert svar barst innan tímamarka. - 2
Skiptu um net til að þrengja leitina
Prófaðu aftur yfir farsímagögn. Ef það virkar liggur vandinn hjá upprunalega netinu eða eldvegg þess.
- 3
Mældu svartíma
Keyrðu hraðapróf milliþjóns til að sjá hvort milliþjónninn sé hægur eða svarlaus.
- 4
Stilltu biðtíma og endurtökutilraunir í hugbúnaðinum
Hækkaðu tengingarmörkin í um 10 sekúndur, bættu við endurtökutilraunum og keyrðu verkið aftur.
Algengar spurningar
Þýðir útrunninn biðtími að milliþjónninn sé dauður?
Ekki endilega. Margir útrunnir biðtímar stafa af því að net notandans lokar á gáttina. Prófaðu frá öðru neti áður en þú dregur ályktanir.
Hvaða biðtíma ætti ég að stilla fyrir milliþjóna í kóða?
Um 10 sekúndur til að tengjast og 30 sekúndur til að lesa er skynsamlegur upphafspunktur. Milliþjónar langt í burtu eða þungar vefsíður gætu þurft meira.
Af hverju rennur biðtími aðeins út á ákveðnum vefsvæðum í gegnum milliþjóninn?
Þá er milliþjónninn að virka en áfangastaðurinn er hægur eða lokar á tenginguna. Ef vefsvæðið gefur 502 í stað þagnar skaltu skoða 502 Bad Gateway.
Hvernig er útrunninn biðtími frábrugðinn hafnaðri tengingu?
Höfnun berst samstundis; biðtími bíður þar til mörkunum er náð. Sjá milliþjónn hafnar tengingum.
Veldu milliþjón nálægt þínum markaði
VinaProxy býður upp á IP-tölur í Víetnam, Bandaríkjunum, Japan, Suður-Kóreu, Singapúr, Bretlandi og Hong Kong, svo þú getir verið nálægt markhópnum þínum.
Sjá verðskrá