Zakaj lahko posredniški strežnik z majhno zakasnitvijo vseeno prenaša počasi
Zakasnitev povezave in prepustnost prenosa merita različne dele zahteve prek posrednika. Test izberite glede na nalogo.
Posrednik, ki hitro vrne majhno stran, lahko vseeno počasi prenaša datoteko. Prva zahteva pokaže predvsem zakasnitev vzpostavitve povezave in odgovora. Večji prenos je odvisen tudi od količine podatkov, ki jo pot zmore prenašati neprekinjeno.
Katera številka odgovori na vaše vprašanje?
| Naloga | Koristno opažanje |
|---|---|
| Odpreti majhno stran ali poslati kratko zahtevo API | Čas do prejema odgovora, vključno z vzpostavitvijo povezave. |
| Prenesti datoteko | Skupno število prenesenih bajtov in povprečna prepustnost z ustrezno testno datoteko. |
| Ohraniti odzivnost aplikacije pri številnih zahtevah | Običajen odzivni čas, neuspehi in ponovna uporaba povezav pri pričakovani obremenitvi. |
ICMP ping je drugačen test. Strežnik lahko odgovarja na ping, ko njegova posredniška storitev ni dosegljiva, ali blokira ping, medtem ko posrednik deluje. Čas poti do naslova posrednika in nazaj prav tako ne zajame njegove povezave z vašim ciljem.
Izmerite dejanski prenos
Uporabite datoteko na strežniku, ki ga nadzorujete, ali datoteko, namenjeno takemu testu. Primer zavrže telo odgovora in izpiše velikost prenosa, povprečne bajte na sekundo in skupni čas:
curl --proxy http://203.0.113.10:8080 --noproxy '' --connect-timeout 5 --max-time 30 --silent --show-error --output /dev/null --write-out 'status=%{http_code} bytes=%{size_download} average_Bps=%{speed_download} seconds=%{time_total}\n' https://example.com/test-file.bin
Zamenjajte tako vzorčni posrednik kot URL datoteke. Stran 404 ali odgovor z zavrnjenim dostopom ni veljaven preizkus prenosa, tudi če prispe hitro. Pred primerjavo hitrosti preverite stanje, pričakovano velikost datoteke in vsebino.
Polje povprečne hitrosti je v bajtih na sekundo. Omrežni paket, oglaševan v bitih na sekundo, uporablja drugo enoto. Za približno pretvorbo bajtov v bite množite z osem; med celotno primerjavo uporabljajte isto enoto.
Ohranite enake pogoje primerjave
Uporabite isti cilj, datoteko, odjemalčevo omrežje in časovne omejitve. Primerjajte več zmernih vzorcev, namesto da izberete najhitrejši poskus. Pri zastalih prenosih premišljeno izberite omejitve vzpostavitve, skupnega časa in nizke hitrosti. Neuspešne zahteve ohranite v rezultatih: posrednik, ki včasih prenaša hitro, a pogosto odpove, je lahko slaba izbira za delo, ki se mora končati.
Predpomnjena datoteka in nov prenos lahko skozi storitev potujeta po različnih poteh. Enako velja za zahtevo po vzpostavitvi povezave in zahtevo, ki ponovno uporabi obstoječo povezavo. Določite, kakšno vedenje aplikacija potrebuje, in dosledno merite to vedenje.
Izberite glede na obremenitev
Pri majhnem odgovoru API je lahko dodatna sekunda pred prvim bajtom pomembnejša od največje prepustnosti. Pri velikem prenosu je hitro rokovanje, ki mu sledi zelo počasno telo, slab kompromis. V obeh primerih testirajte dejanski cilj; ena ocena hitrosti ne opiše vseh poti skozi posrednik.
ProxyHubov seznam posredniških strežnikov ne ponuja neodvisnih meritev prepustnosti za vsak IP. Filter po protokolu ali državi ni lestvica hitrosti.