Mät hastigheten på en webbplats med cURL från Ubuntu-terminalen

om att mäta en webbs hastighet med cURL

I nästa artikel ska vi ta en titt på hur vi kan mäta svarstiden för en webbplats från terminalen med hjälp av cURL. Detta är intressant att veta, eftersom det kan ha stor inverkan på användarupplevelsen.

Oavsett om du är webbutvecklare eller om du hanterar en server vet du det hastighet det är något som alltid ska vara klart. Det är viktigt att allt fungerar korrekt så att användarna inte känner sig frustrerade när de besöker din webbplats.

Nästa kommer vi att se några kommandon för att kunna mäta svarstiden på en webbplats. Med dem kommer vi att kunna kontrollera tiden i sekunder för olika fält på både http- och https-sidor. Vi kommer att göra allt från Ubuntu-kommandoraden med cURL,

Använd cURL för att mäta lasthastigheten

Från webbplatser med HTTP

hastighetskontroll av en http-webb

cURL har många alternativ tillgängliga, bland dem kan vi hitta -w, vilket kommer att vara användbart för skriva ut information till standardutdata efter en avslutad operation. Det erbjuder oss också några variabler som vi kan använda för att testa olika svarstider på en webbplats.

För att uppnå denna mätning ska vi använda några av de variabler som finns i officiell dokumentation för CURL. Dessa kan skickas i ett visst format som en bokstav eller i en fil.

Variablerna som vi kommer att använda är följande:

  • time_name lookup → Tid i sekunder. Är tagen från starten tills namnupplösningen är klar.
  • tid_anslut → Tid i sekunder. Från start till slutförande av TCP-anslutning till fjärrvärd eller proxy.
  • time_pret transfer → Tiden i sekunder som det tog från början till filöverföringen skulle börja. Detta inkluderar alla kommandon och förhandlingar före överföring som är specifika för de berörda protokollen.
  • time_starttransfer → Tiden i sekunder som det tog från början till den första byten skulle överföras. Detta inkluderar time_pretransfer och även den tid det tog för servern att beräkna resultatet.
  • tid_totalTotal tid i sekunder som hela operationen varade. Det löses i millisekunder.

till kör kommandot som vi ska montera med tidigare variabler, vi behöver bara öppna en terminal (Ctrl + Alt + T) och skriva:

curl -s -w '\nTiempo de respuesta para: %{url_effective}\n\nLookup Time:\t\t%{time_namelookup}\nConnect Time:\t\t%{time_connect}\nPre-transfer Time:\t%{time_pretransfer}\nStart-transfer Time:\t%{time_starttransfer}\n\nTotal Time:\t\t%{time_total}\n' -o /dev/null http://www.google.com

Eftersom detta kan bli lite besvärligt att skriva det i en terminal varje gång vi vill använda det, kan vi välja att skriva det till en fil.

Inne i filen, som jag ska ge namnet på control-speed-web.txtmåste du klistra in följande kod:

\nTiempo de respuesta para: %{url_effective}\n\nLookup Time:\t\t%{time_namelookup}\nConnect Time:\t\t%{time_connect}\nPre-transfer Time:\t%{time_pretransfer}\nStart-transfer Time:\t%{time_starttransfer}\n\nTotal Time:\t\t%{time_total}\n

När vi väl är sparade och tillbaka i terminalen kan vi använd den här filen genom att skriva följande syntax:

curl -s -w "@control-velocidad-web.txt" -o /dev/null http://www.google.com

Ovanstående kommando kommer att fungera tyst läge tack vare -s. Med -w informationen skrivs ut stdout. För omdirigera utdata till / dev / null låt oss använda -o.

Från webbplatser med HTTPS

mäta hastigheten på en https-webb

Om vi ​​är intresserade av att använda detta test för HTTPS-webbplatser kan vi utföra kommandot i terminalen (Ctrl + Alt + T):

curl -s -w '\nTiempo de respuesta para: %{url_effective}\n\nLookup Time:\t\t%{time_namelookup}\nConnect Time:\t\t%{time_connect}\nAppConnect Time:\t\t%{time_appconnect}\nRedirect Time:\t\t%{time_redirect}\nPre-transfer Time:\t%{time_pretransfer}\nStart-transfer Time:\t%{time_starttransfer}\n\nTotal Time:\t\t%{time_total}\n' -o /dev/null https://ubunlog.com

I detta format används fler tidsvariabler utöver ovanstående. Och dessa är:

  • time_appconnect → Tiden i sekunder som det tog från början tills SSL / SSH / etc-anslutningen till fjärrvärden slutfördes.
  • time_redirect → Tid i sekunder, vilket tog alla omdirigeringssteg innan den slutliga transaktionen startade. Beräkna den totala körtiden för flera omdirigeringar.

Som i föregående fall kan den också skrivas till en fil. Som i föregående fall kommer jag att göra det samtal control-speed-web.txt, och inuti måste du klistra in:

\nTiempo de respuesta para: %{url_effective}\n\nLookup Time:\t\t%{time_namelookup}\nConnect Time:\t\t%{time_connect}\nAppConnect Time:\t\t%{time_appconnect}\nRedirect Time:\t\t%{time_redirect}\nPre-transfer Time:\t%{time_pretransfer}\nStart-transfer Time:\t%{time_starttransfer}\n\nTotal Time:\t\t%{time_total}\n

Vi sparade filen och tillbaka i terminalen använd den med syntax:

curl -s -w "@control-velocidad-web.txt" -o /dev/null https://ubunlog.com

För mer information kan du konsultera cUrl-dokumentation eller mansidan:

man curl

Como svarstidsvärdena kommer att ändras på grund av olika faktorer, är det lämpligt att utföra olika tester och fastställa en genomsnittlig hastighet. Något som vi också kommer att se är att åtkomst till en webbplats via HTTP i allmänhet är mycket snabbare än att göra det via HTTPS.


Lämna din kommentar

Din e-postadress kommer inte att publiceras. Obligatoriska fält är markerade med *

*

*

  1. Ansvarig för uppgifterna: Miguel Ángel Gatón
  2. Syftet med uppgifterna: Kontrollera skräppost, kommentarhantering.
  3. Legitimering: Ditt samtycke
  4. Kommunikation av uppgifterna: Uppgifterna kommer inte att kommuniceras till tredje part förutom enligt laglig skyldighet.
  5. Datalagring: databas värd för Occentus Networks (EU)
  6. Rättigheter: När som helst kan du begränsa, återställa och radera din information.