Wéi Test Websäit Luede Geschwindegkeet am Linux Terminal


Eng Websäit Äntwertzäit kann e groussen Impakt op d'Benotzererfarung hunn, a wann Dir e Webentwéckler sidd, oder einfach e Serveradministrator dee besonnesch verantwortlech ass fir d'Stécker zesummen z'organiséieren, da musst Dir e Punkt maachen datt d'Benotzer net fillen frustréiert beim Zougang zu Ärem Site - also ass et wierklech Bedierfnes fir Geschwindegkeet.

Dëse Guide weist Iech wéi Dir eng Websäit Äntwertzäit vun der Linux Kommandozeil testen. Hei wäerte mir weisen wéi Dir d'Zäit a Sekonnen iwwerpréift, et dauert:

  • Nummresolutioun auszeféieren.
  • fir TCP Verbindung zum Server.
  • fir den Dateietransfer unzefänken.
  • fir den éischte Byte ze transferéieren.
  • fir déi komplett Operatioun.

Zousätzlech, fir HTTPS-aktivéiert Siten, wäerte mir och gesinn, wéi d'Zäit ze testen, a Sekonnen, et dauert: fir e Viruleedung, an SSL Verbindung/Handshake op de Server ofgeschloss ze ginn. Et kléngt gutt richteg, okay, loosst eis ufänken.

cURL ass e mächtege Kommandozeilinstrument fir Daten vun oder op e Server ze transferéieren, mat Protokoller wéi FILE, FTP, FTPS, HTTP, HTTPS a vill anerer. Am meeschte Fäll gëtt et als Kommandozeil-Downloader benotzt, oder fir HTTP-Header ze kontrolléieren. Wéi och ëmmer, hei wäerte mir eng vu senge manner bekannte Funktionalitéite beschreiwen.

cURL huet eng nëtzlech Optioun: -w fir Informatioun iwwer stdout no enger ofgeschlosser Operatioun ze drécken. Et huet e puer Variabelen déi mir benotze kënnen fir déi verschidden Äntwertzäiten hei uewen opgezielt ze testen, vun enger Websäit.

Mir benotzen e puer vun den Zäitrelatéierte Variabelen, déi an engem bestëmmte Format als wuertwiertlech String oder an enger Datei weidergeleet kënne ginn.

Also öffnen Ären Terminal a lafen de Kommando hei ënnen:

$ curl -s -w 'Testing Website Response Time for :%{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

D'Variabelen am uewe genannte Format sinn:

  • time_namelookup - Zäit, a Sekonnen, et huet vum Ufank gedauert bis d'Nummléisung fäerdeg war.
  • time_connect - Zäit, a Sekonnen, et huet vun Ufank un gedauert bis den TCP Verbindung mam Fernhost (oder Proxy) fäerdeg war.
  • time_pretransfer - Zäit, a Sekonnen, et huet vun Ufank un gedauert bis den Dateietransfer just ugefaang huet.
  • time_starttransfer - Zäit, a Sekonnen, et huet vum Start gedauert bis den éischte Byte just amgaang ass ze transferéieren.
  • time_total - Gesamtzäit, a Sekonnen, déi déi voll Operatioun gedauert huet (Millisekonnen Opléisung).

Wann d'Format ze laang ass, kënnt Dir et an enger Datei schreiwen an d'Syntax hei ënnen benotzen fir se ze liesen:

$ curl -s -w "@format.txt" -o /dev/null http://www.google.com

Am uewe genannte Kommando, de Fändel:

  • -s – erzielt Curl fir roueg ze schaffen.
  • -w - Dréckt d'Informatioun op stdout.
  • -o – benotzt fir d'Ausgab ze redirectéieren (hei verwerfe mir den Ausgang andeems Dir se op /dev/null ëmgeleet).

Fir HTTPS Siten, kënnt Dir de Kommando hei ënnen ausféieren:

$ curl -s -w 'Testing Website Response Time for :%{url_effective}\n\nLookup Time:\t\t%{time_namelookup}\nConnect Time:\t\t%{time_connect}\nAppCon 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://www.google.com

Am uewe genannte Format sinn déi nei Zäitvariablen:

  • time_appconnect - Zäit, a Sekonnen, et huet vum Ufank gedauert bis den SSL Connect/Handshake zum Fernhost fäerdeg war.
  • Time_Redirect - Zäit, a Sekonnen, huet et fir all Viruleedungsschrëtt gedauert, dorënner Numm Lookup, Connect, Pretransfer an Transfer ier déi lescht Transaktioun gestart gouf; et berechent déi voll Ausféierungszäit fir verschidde Viruleedungen.

Wichteg Punkten ze notéieren.

  • Dir wäert bemierken datt d'Äntwertzäitwäerter sech weider änneren (wéinst e puer Faktoren) wéi Dir verschidden Tester ausféiert, dofir ass et unzeroden e puer Wäerter ze sammelen an eng Duerchschnëttsgeschwindegkeet ze kréien.
  • Zweetens, aus de Resultater vun de Kommandoen hei uewen, kënnt Dir gesinn datt Zougang zu enger Websäit iwwer HTTP vill méi séier ass wéi iwwer HTTPS.

Fir méi Informatioun, kuckt d'cURL Man Säit:

$ man curl

Lescht awer net zulescht, wann Är Resultater net agreabel sinn, dann hutt Dir e puer Upassunge fir op Ärem Server oder am Code ze maachen. Dir kënnt iwwerleeën déi folgend Tutorials ze benotzen déi Programmer an Tipps erkläre fir Websäit(en) méi séier a Linux ze lueden:

  1. Installéiere Nginx mat Ngx_Pagespeed (Speed Optimization) op Debian an Ubuntu
  2. Speed Up Nginx Performance mat Ngx_Pagespeed op CentOS 7
  3. Léiert wéi Dir Websäiten mat Nginx a Gzip Modul beschleunegt
  4. Wéi Erhéijung Linux Server Internet Geschwindegkeet mat TCP BBR

Dat ass alles! Elo wësst Dir wéi Dir d'Äntwertzäit vun der Websäit vun der Kommandozeil testen. Dir kënnt Froen iwwer de Feedbackformular hei ënnen stellen.