Čítanie časov proxy v cURL zo strany klienta
Vysvetlite časy pripojenia, TLS, prvého bajtu a celkového prenosu bez toho, aby ste nepozorovanú prácu vyššie prisúdili meraniu samotnej proxy.
Predpokladajme, že cURL otvorí nové TCP spojenie k bežnej HTTP proxy, vytvorí tunel HTTPS a stiahne jednu odpoveď. Časy opisujú míľniky, ktoré cURL na tejto ceste pozoroval.
| Hodnota | Míľnik meraný od začiatku prenosu |
|---|---|
| time_connect | Spojenie s proxy bolo dokončené |
| time_appconnect | Príslušný TLS handshake bol dokončený |
| time_starttransfer | Bol prijatý prvý bajt odpovede |
| time_total | Prenos sa skončil |
Pre ilustratívne zachytenie v POSIX shelli:
curl --proxy http://proxy.example:8080 \
--output /dev/null \
--write-out 'connect=%{time_connect} tls=%{time_appconnect} first=%{time_starttransfer} total=%{time_total}\n' \
https://example.com/
Pre povolené verejné porovnanie cez HTTPS bez prihlasovacích údajov k proxy môže ukážkovú proxy nahradiť HTTP záznam zo zoznamu HTTP proxy. Hodnoty sú kumulatívne sekundy. Nie sú to štyri nezávislé časy, ktoré sa sčítavajú. Uchovávajte chybu prenosu a stav odpovede vedľa čísel: neúspešné spojenie alebo odmietnutý tunel nedosiahli každý ďalší míľnik.
Čo môže odhaliť odčítanie
Pri jednej úspešnej odpovedi time_total mínus time_starttransfer opisuje zostávajúci interval po príchode prvého bajtu. Ide hlavne o neskorší prenos odpovede a súvisiacu prácu na strane klienta. Nie je to čas proxy na pripojenie k webu, pretože ten nastal skôr, než odpoveď mohla doraziť.
Rovnako time_starttransfer mínus time_connect môže zahŕňať vytváranie tunela, TLS, čakanie v nadradenej sieti, prácu servera a ďalšie spracovanie. Nazývať celý rozdiel „latenciou proxy“ znamená prisúdiť niekoľko zložiek jednému účastníkovi.
Aby ste oddelili čakanie proxy na DNS, spojenie a odpoveď, získajte zodpovedajúce pozorovania alebo trasovanie zo strany proxy. Klient tieto vnútorné časové značky nedostane len tým, že používa HTTP CONNECT.
Porovnávajte ekvivalentné prenosy. Presmerovania pridávajú časy viacerých požiadaviek, zatiaľ čo opätovné použitie spojení a multiplexovanie menia, aká prípravná práca je potrebná. Poznamenajte si tieto podmienky predtým, než porovnáte čísla jednej proxy s číslami inej.