Kuinka testata verkkosivuston latausnopeutta Linux-päätteessä


Verkkosivuston vasteajalla voi olla suuri vaikutus käyttökokemukseen, ja jos olet verkkokehittäjä tai yksinkertaisesti palvelimen järjestelmänvalvoja, joka on erityisen vastuussa osien järjestämisestä yhteen, sinun on tehtävä se asia, jota käyttäjät eivät tunne. turhautunut käyttäessään sivustoasi – joten on todellakin "tarve nopeudelle".

Lue myös: httpsstat – Curl Statistics -työkalu verkkosivuston suorituskyvyn tarkistamiseen

Tämä opas näyttää, kuinka voit testata verkkosivuston vasteaikaa Linuxin komentoriviltä. Tässä näytämme kuinka tarkistaa aika sekunneissa, se kestää:

  • suorittaaksesi nimenselvityksen.
  • TCP-yhteyttä varten palvelimeen.
  • jotta tiedostojen siirto alkaa.
  • ensimmäiselle siirrettävälle tavulle.
  • täydellistä toimintaa varten.

Lisäksi HTTPS-yhteensopivien sivustojen osalta näemme myös kuinka testataan sekunteina käytetty aika: uudelleenohjauksen ja SSL-yhteyden/kättelyn suorittaminen palvelimelle. Kuulostaa hyvältä, okei, aloitetaan.

cURL on tehokas komentorivityökalu tietojen siirtämiseen palvelimelta tai palvelimelle käyttämällä protokollia, kuten FILE, FTP, FTPS, HTTP, HTTPS ja monia muita. Useimmissa tapauksissa sitä käytetään komentorivin latausohjelmana tai HTTP-otsikoiden tarkistamiseen. Tässä kuitenkin kuvataan yksi sen vähemmän tunnetuista toiminnoista.

cURL sisältää hyödyllisen vaihtoehdon: -w tietojen tulostamiseen stdoutiin suoritetun toiminnon jälkeen. Siinä on joitain muuttujia, joiden avulla voimme testata yllä lueteltuja verkkosivuston eri vasteaikoja.

Käytämme joitain aikaan liittyviä muuttujia, jotka voidaan välittää tietyssä muodossa kirjaimellisena merkkijonona tai tiedoston sisällä.

Joten avaa terminaali ja suorita alla oleva komento:

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

Muuttujat yllä olevassa muodossa ovat:

  • time_namelookup – aika sekunneissa, joka kului alusta, kunnes nimen selvitys oli valmis.
  • time_connect – aika sekunneissa, joka kesti alusta, kunnes TCP-yhteys etäisäntään (tai välityspalvelimeen) saatiin päätökseen.
  • time_pretransfer – aika sekunteina, joka kului alusta, kunnes tiedostonsiirto oli juuri alkamassa.
  • time_starttransfer – aika sekunneissa, joka kului alusta, kunnes ensimmäinen tavu oli juuri siirtämässä.
  • time_total – kokonaisaika sekunteina, jonka koko toiminto kesti (millisekunnin resoluutio).

Jos muoto on liian pitkä, voit kirjoittaa sen tiedostoon ja lukea sen alla olevan syntaksin avulla:

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

Yllä olevassa komennossa lippu:

  • -s – käskee kiharan toimimaan äänettömästi.
  • -w – tulostaa tiedot stdoutiin.
  • -o – käytetään tulosteen uudelleenohjaamiseen (tässä hylätään tulos ohjaamalla se osoitteeseen /dev/null).

HTTPS-sivustoille voit suorittaa alla olevan komennon:

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

Yllä olevassa muodossa uudet aikamuuttujat ovat:

  • time_appconnect – aika sekunneissa, joka kesti alusta, kunnes SSL-yhteys/kättely etäisäntään saatiin päätökseen.
  • time_redirect – aika, sekunneissa, joka kului kaikkiin uudelleenohjausvaiheisiin, mukaan lukien nimenhaku, yhteys, esisiirto ja siirto ennen lopullisen tapahtuman aloittamista. se laskee useiden uudelleenohjausten täyden suoritusajan.

Tärkeitä huomioitavia seikkoja.

  • Huomaat, että vasteaika-arvot muuttuvat jatkuvasti (useista tekijöistä johtuen), kun teet erilaisia testejä, joten on suositeltavaa kerätä useita arvoja ja saada keskinopeus.
  • Toiseksi, yllä olevien komentojen tuloksista voit nähdä, että verkkosivustolle pääsy HTTP:n kautta on paljon nopeampaa kuin HTTPS:n kautta.

Lisätietoja on cURL-manuaalisivulla:

man curl

Viimeisenä mutta ei vähäisimpänä, jos tuloksesi eivät ole miellyttäviä, sinun on tehtävä joitain muutoksia palvelimellesi tai koodiin. Voit harkita seuraavien opetusohjelmien käyttöä, jotka selittävät ohjelmia ja vinkkejä verkkosivustojen latautumisen nopeuttamiseksi Linuxissa:

  1. Asenna Nginx ja Ngx_Pagespeed (nopeuden optimointi) Debianiin ja Ubuntuun
  2. Nopeuta Nginxin suorituskykyä Ngx_Pagespeedillä CentOS 7:ssä
  3. Opi nopeuttamaan verkkosivustoja Nginx- ja Gzip-moduulin avulla
  4. Kuinka lisätä Linux-palvelimen Internet-nopeutta TCP BBR: llä

Siinä kaikki! Nyt tiedät kuinka testata verkkosivuston vasteaika komentoriviltä. Voit esittää kysymyksiä alla olevan palautelomakkeen kautta.