Proč může proxy s nízkou latencí přesto stahovat pomalu
Prodleva při připojení a propustnost stahování měří různé části požadavku přes proxy. Zvolte test podle úkolu.
Proxy, která rychle vrátí malou stránku, může přesto pomalu stahovat soubor. První požadavek ukazuje hlavně prodlevu při navazování spojení a odezvě. Větší přenos závisí také na tom, kolik dat dokáže trasa soustavně přenášet.
Která hodnota odpoví na vaši otázku?
| Úkol | Užitečné pozorování |
|---|---|
| Otevřít malou stránku nebo odeslat krátký požadavek API | Doba do přijetí odpovědi včetně navázání spojení. |
| Stáhnout soubor | Celkem přenesených bajtů a průměrná propustnost s vhodným testovacím souborem. |
| Udržet aplikaci pohotovou při mnoha požadavcích | Obvyklá doba odezvy, selhání a opakované využití spojení při očekávané zátěži. |
ICMP ping je jiný test. Server může odpovídat na ping, i když je jeho proxy služba nedostupná, nebo ping blokovat, zatímco proxy funguje. Doba cesty k adrese proxy a zpět navíc nezahrnuje spojení proxy s vaším cílem.
Změřte skutečný přenos
Použijte soubor na serveru, který ovládáte, nebo soubor určený pro takové testy. Tento příklad zahodí tělo odpovědi a vypíše velikost přenosu, průměrný počet bajtů za sekundu a celkovou dobu:
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
Nahraďte ukázkovou proxy i URL souboru. Stránka 404 nebo odpověď o odepřeném přístupu není platným měřítkem stahování, ani když přijde rychle. Před porovnáním rychlostí ověřte stav, očekávanou velikost souboru a obsah.
Pole průměrné rychlosti je v bajtech za sekundu. Síťový tarif inzerovaný v bitech za sekundu používá jinou jednotku. Pro přibližný převod bajtů na bity násobte osmi; v celém porovnání zachovejte stejnou jednotku.
Zajistěte stejné podmínky
Použijte stejný cíl, soubor, klientskou síť i nastavení časových limitů. Porovnejte několik přiměřených vzorků místo výběru nejrychlejšího pokusu. U uvázlých přenosů uvážlivě nastavte limity pro navázání spojení, celkovou dobu a nízkou rychlost. Neúspěšné požadavky ponechte ve výsledcích: proxy, která někdy přenáší rychle, ale často selhává, může být špatnou volbou pro úkol, který se musí dokončit.
Soubor z mezipaměti a nové stažení mohou službou procházet různými cestami. Totéž platí pro požadavek po navázání spojení a požadavek využívající již existující spojení. Určete, jaké chování aplikace potřebuje, a důsledně měřte právě je.
Vybírejte podle zátěže
U malé odpovědi API může být sekunda čekání navíc před prvním bajtem důležitější než špičková propustnost. U velkého stahování je rychlé navázání spojení následované velmi pomalým tělem nevýhodný kompromis. V obou případech testujte cíl, který skutečně použijete; jedno rychlostní skóre nepopisuje všechny trasy přes proxy.
Seznam proxy na ProxyHub neposkytuje nezávislá měření propustnosti pro jednotlivé IP. Filtr protokolu nebo země není žebříčkem rychlosti.