Измерете скоростта на уебсайт с cURL от терминала на Ubuntu

за измерване на скоростта на мрежата с cURL

В следващата статия ще разгледаме как можем измервайте времето за реакция на уебсайт от терминала с помощта на cURL. Това е интересно да се знае, тъй като може да окаже голямо влияние върху потребителското изживяване.

Независимо дали сте уеб разработчик или управлявате сървър, ще знаете това скорост това е нещо, което винаги трябва да е готово. Важно е всичко да работи правилно, така че потребителите да не се чувстват разочаровани, докато имат достъп до вашия сайт.

След това ще видим някои команди, за да можем измервайте времето за реакция на уебсайт. С тях ще можем проверете времето в секунди на различни полета на http и https страници. Ще направим всичко от командния ред на Ubuntu, използвайки cURL,

Използвайте cURL за измерване на скоростта на зареждане

От уебсайтове с HTTP

контрол на скоростта на http мрежа

cURL има много опции, сред които можем да намерим -w, което ще бъде полезно за отпечатайте информация на стандартен изход след завършена операция. Предлага ни и някои променливи, които можем да използваме, за да тестваме различните времена за реакция на уебсайт.

За да постигнем това измерване, ще използваме някои от променливите, които могат да бъдат намерени в cURL официална документация. Те могат да бъдат предадени в даден формат като буквален низ или във файл.

Променливите, които ще използваме, ще бъдат следните:

  • time_namelookup → Време в секунди. Взето е от самото начало до завършването на разрешаването на имената.
  • връзка за време → Време в секунди. От стартиране до завършване на TCP връзка с отдалечен хост или прокси.
  • време_предварителен трансфер → Времето в секунди, което отне от самото начало, докато прехвърлянето на файлове щеше да започне. Това включва всички команди и преговори преди прехвърляне, които са специфични за участващите протоколи.
  • време_начало прехвърляне → Времето в секунди, което отне от началото до първия байт трябваше да бъде прехвърлен. Това включва time_pretransfer, както и времето, необходимо на сървъра да изчисли резултата.
  • общ_времеОбщо време в секунди, което е продължило цялата операция. Разрешава се за милисекунди.

за изпълнете командата, която ще монтираме с предишните променливи, ще трябва само да отворим терминал (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}\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

Тъй като това може да стане малко тромаво, за да го запишем в терминал всеки път, когато искаме да го използваме, можем да изберем да го запишем във файл.

Вътре във файла, на което ще дам името на control-speed-web.txt, трябва да поставите следния код:

\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

След като сме запазени и се върнем в терминала, можем използвайте този файл, като въведете следния синтаксис:

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

Горната команда ще работи безшумен режим благодарение на -s, с -w информацията е отпечатана стандартния изход. За пренасочете изхода към / dev / null нека използваме -o.

От уебсайтове с HTTPS

измервайте скоростта на https мрежа

Ако се интересуваме от използването на този тест за HTTPS сайтове, можем да изпълним командата в терминала (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

В този формат се използват повече времеви променливи в допълнение към горното. И това са:

  • time_appconnect → Времето в секунди, което отне от началото до свързването на SSL / SSH / и т.н. с отдалечения хост.
  • пренасочване на времето → Време в секунди, което отне всички стъпки за пренасочване преди стартирането на последната транзакция. Изчислете общото време за изпълнение за множество пренасочвания.

Както в предишния случай, той също може да бъде записан във файл. Както и в предишния случай ще го направя llamar control-speed-web.txt, а вътре ще трябва да поставите:

\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

Запазихме файла и обратно в терминала, можем използвайте го със синтаксис:

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

За повече информация можете консултирайте се с cUrl документация или ръководството:

man curl

Como стойностите на времето за реакция ще се променят поради различни фактори, препоръчително е да се извършат различни тестове и да се установи средна скорост. Нещо, което също ще видим, е, че достъпът до уебсайт чрез HTTP обикновено е много по-бърз, отколкото чрез HTTPS.


Оставете вашия коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани с *

*

*

  1. Отговорен за данните: Мигел Анхел Гатон
  2. Предназначение на данните: Контрол на СПАМ, управление на коментари.
  3. Легитимация: Вашето съгласие
  4. Съобщаване на данните: Данните няма да бъдат съобщени на трети страни, освен по законово задължение.
  5. Съхранение на данни: База данни, хоствана от Occentus Networks (ЕС)
  6. Права: По всяко време можете да ограничите, възстановите и изтриете информацията си.