Zmierz prędkość witryny internetowej za pomocą cURL z terminala Ubuntu

o mierzyć prędkość sieci za pomocą cURL

W następnym artykule przyjrzymy się, jak to możliwe mierzyć czas odpowiedzi strony internetowej z terminala za pomocą cURL. Warto to wiedzieć, ponieważ może mieć duży wpływ na wrażenia użytkownika.

Niezależnie od tego, czy jesteś programistą internetowym, czy zarządzasz serwerem, będziesz o tym wiedział prędkość jest to coś, co powinno być zawsze gotowe. Ważne jest, aby wszystko działało poprawnie, aby użytkownicy nie czuli się sfrustrowani podczas uzyskiwania dostępu do Twojej witryny.

Następnie zobaczymy kilka poleceń, aby móc to zrobić mierzyć czas odpowiedzi witryny internetowej. Z nimi będziemy mogli sprawdź czas w sekundach w różnych polach stron http i https. Zrobimy wszystko z wiersza poleceń Ubuntu za pomocą cURL,

Użyj cURL, aby zmierzyć prędkość ładowania

Ze stron internetowych z protokołem HTTP

kontrola szybkości sieci http

cURL ma wiele dostępnych opcji, wśród nich możemy znaleźć -w, co będzie przydatne dla wypisuje informacje na standardowe wyjście po zakończonej operacji. Daje nam też trochę zmienne, których możemy użyć do przetestowania różnych czasów odpowiedzi strony internetowej.

Aby osiągnąć ten pomiar, użyjemy niektórych zmiennych, które można znaleźć w pliku Oficjalna dokumentacja cURL. Można je przekazać w podanym formacie jako ciąg literału lub w pliku.

Zmienne, których będziemy używać, będą następujące:

  • time_name lookup → Czas w sekundach. Jest zajęty od początku do zakończenia rozpoznawania nazw.
  • czas_połączenia → Czas w sekundach. Od uruchomienia do zakończenia połączenia TCP ze zdalnym hostem lub proxy.
  • czas_pretransfer → Czas w sekundach, jaki zajęło od początku do momentu rozpoczęcia przesyłania pliku. Obejmuje to wszystkie polecenia i negocjacje przed transferem, które są specyficzne dla danych protokołów.
  • czas_starttransferu → Czas w sekundach, jaki zajęło od początku do momentu przesłania pierwszego bajtu. Obejmuje to time_pretransfer, a także czas potrzebny serwerowi na obliczenie wyniku.
  • całkowity_czasCałkowity czas w sekundach, przez który trwała cała operacja. Jest rozwiązywany w milisekundach.

do wykonaj polecenie, które zamierzamy zamontować z poprzednimi zmiennymi, będziemy musieli tylko otworzyć terminal (Ctrl + Alt + T) i napisać:

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

Ponieważ zapisywanie go w terminalu za każdym razem, gdy chcemy go użyć, może stać się nieco kłopotliwe, możemy zapisać go do pliku.

Wewnątrz pliku, któremu podam nazwę control-speed-web.txt, musisz wkleić następujący 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

Po zapisaniu i z powrotem w terminalu możemy użyj tego pliku, wpisując następującą składnię:

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

Powyższe polecenie będzie działać tryb cichy dzięki -s. Z -w informacje są drukowane stdout. Dla przekieruj wyjście do / dev / null użyjmy -o.

Ze stron internetowych z HTTPS

zmierzyć prędkość strony internetowej https

Jeśli jesteśmy zainteresowani wykorzystaniem tego testu dla stron HTTPS, możemy wykonać polecenie w terminalu (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

W tym formacie oprócz powyższego używanych jest więcej zmiennych czasowych. A to są:

  • time_appconnect → Czas w sekundach, jaki zajęło od początku do zakończenia połączenia SSL / SSH / etc ze zdalnym hostem.
  • przekierowanie_czasu → Czas w sekundach, który zajął wszystkie kroki przekierowania przed rozpoczęciem ostatecznej transakcji. Oblicz całkowity czas wykonywania wielu przekierowań.

Podobnie jak w poprzednim przypadku można go również zapisać do pliku. Tak jak w poprzednim przypadku zadzwoń control-speed-web.txt, a wewnątrz będziesz musiał wkleić:

\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

Zapisaliśmy plik iz powrotem w terminalu, możemy używaj go ze składnią:

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

Aby uzyskać więcej informacji, możesz zapoznaj się z Dokumentacja cUrl lub stronę podręcznika:

man curl

Como wartości czasu odpowiedzi zmienią się z powodu różnych czynnikówwskazane jest wykonanie różnych testów i ustalenie średniej prędkości. Coś, co zobaczymy, to fakt, że dostęp do strony internetowej przez HTTP jest generalnie znacznie szybszy niż robienie tego przez HTTPS.


Zostaw swój komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*

*

  1. Odpowiedzialny za dane: Miguel Ángel Gatón
  2. Cel danych: kontrola spamu, zarządzanie komentarzami.
  3. Legitymacja: Twoja zgoda
  4. Przekazywanie danych: Dane nie będą przekazywane stronom trzecim, z wyjątkiem obowiązku prawnego.
  5. Przechowywanie danych: baza danych hostowana przez Occentus Networks (UE)
  6. Prawa: w dowolnym momencie możesz ograniczyć, odzyskać i usunąć swoje dane.