Læs cURL's proxytider fra klientsiden
Fortolk tider for forbindelse, TLS, første byte og total uden at tilskrive uobserveret arbejde længere oppe til en måling, der kun gælder proxyen.
Antag at cURL åbner en ny TCP-forbindelse til en almindelig HTTP-proxy, opretter en HTTPS-tunnel og henter ét svar. Tiderne beskriver de milepæle, som cURL har observeret på den vej.
| Værdi | Milepæl målt fra overførslens start |
|---|---|
| time_connect | Forbindelsen til proxyen blev fuldført |
| time_appconnect | Det relevante TLS-håndtryk blev fuldført |
| time_starttransfer | Den første byte af svaret blev modtaget |
| time_total | Overførslen sluttede |
For en illustrativ optagelse i POSIX-shell:
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/
Til en tilladt offentlig HTTPS-sammenligning uden proxyoplysninger kan en HTTP-post fra listen over HTTP-proxyer erstatte eksempelproxyen. Værdierne er akkumulerede sekunder. De er ikke fire uafhængige varigheder, der skal lægges sammen. Hold overførselsfejlen og svarstatus ved siden af tallene: en mislykket forbindelse eller afvist tunnel nåede ikke hver senere milepæl.
Hvad subtraktion kan fortælle dig
For ét vellykket svar beskriver time_total minus time_starttransfer det resterende interval, efter at den første byte er ankommet. Det er især den senere svaroverførsel og det tilhørende arbejde på klientsiden. Det er ikke proxyens tid til at forbinde til webstedet, for det skete, før svaret kunne ankomme.
På samme måde kan time_starttransfer minus time_connect omfatte tunneldannelse, TLS, ventetider i det overliggende netværk, serverarbejde og anden behandling. At kalde hele forskellen "proxylatens" tildeler flere komponenter til én deltager.
For at adskille proxyens ventetider på DNS, forbindelse og svar skal du skaffe tilsvarende observationer eller sporinger fra proxyens side. Klienten modtager ikke disse interne tidsstempler blot ved at bruge HTTP CONNECT.
Sammenlign ækvivalente overførsler. Omdirigeringer tilføjer tider fra flere anmodninger, mens genbrug af forbindelser og multiplexing ændrer, hvilket forberedelsesarbejde der er nødvendigt. Notér disse betingelser, før du sammenligner én proxys tal med en andens.