Jinsi ya Kujaribu Kasi ya Upakiaji wa Tovuti kwenye terminal ya Linux


Muda wa majibu ya tovuti unaweza kuwa na athari kubwa kwa matumizi ya mtumiaji, na ikiwa wewe ni msanidi programu, au msimamizi wa seva ambaye anawajibika hasa kupanga vipande pamoja, basi itabidi uweke jambo ambalo watumiaji hawahisi. nimechanganyikiwa wakati wa kufikia tovuti yako - kwa hivyo kuna hitaji la kasi.

Mwongozo huu utakuonyesha jinsi ya kujaribu wakati wa majibu ya tovuti kutoka kwa mstari wa amri wa Linux. Hapa, tutaonyesha jinsi ya kuangalia wakati kwa sekunde, inachukua:

  • ili kutekeleza utatuzi wa jina.
  • kwa muunganisho wa TCP kwenye seva.
  • ili uhamishaji wa faili uanze.
  • kwa baiti ya kwanza kuhamishwa.
  • kwa operesheni kamili.

Zaidi ya hayo, kwa tovuti zinazowezeshwa na HTTPS, tutaona pia jinsi ya kupima muda, kwa sekunde, inachukua: ili kuelekeza kwingine, na muunganisho wa SSL/kupeana mkono kwa seva kukamilishwa. Inasikika vizuri, sawa, wacha tuanze.

cURL ni zana yenye nguvu ya safu ya amri ya kuhamisha data kutoka au hadi kwa seva, kwa kutumia itifaki kama vile FILE, FTP, FTPS, HTTP, HTTPS na zingine nyingi. Katika hali nyingi, hutumiwa kama kipakuzi cha mstari wa amri, au kwa kuangalia vichwa vya HTTP. Walakini, hapa, tutaelezea moja ya utendaji wake usiojulikana sana.

cURL ina chaguo muhimu: -w kwa uchapishaji wa habari kwenye stdout baada ya operesheni iliyokamilika. Ina baadhi ya vigeu ambavyo tunaweza kutumia kujaribu nyakati tofauti za majibu zilizoorodheshwa hapo juu, za tovuti.

Tutatumia baadhi ya vigeu vinavyohusiana na wakati, ambavyo vinaweza kupitishwa katika umbizo fulani kama mfuatano halisi au ndani ya faili.

Kwa hivyo fungua terminal yako na uendesha amri hapa chini:

$ 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

Vigezo katika muundo hapo juu ni:

  • time_namelookup - muda, kwa sekunde, ilichukua kutoka mwanzo hadi utatuzi wa jina ukamilike.
  • time_connect - muda, kwa sekunde, ilichukua kutoka mwanzo hadi TCP iunganishe kwa seva pangishi ya mbali (au seva mbadala) ikamilike.
  • time_pretransfer – muda, kwa sekunde, ilichukua kutoka mwanzo hadi uhamishaji wa faili ulipokaribia kuanza.
  • time_starttransfer – muda, kwa sekunde, ilichukua kutoka mwanzo hadi baiti ya kwanza ilikuwa karibu kuhamishwa.
  • muda_jumla - jumla ya muda, katika sekunde, ambapo utendakazi kamili ulidumu (mwonekano wa milisekunde).

Ikiwa umbizo ni refu sana, unaweza kuliandika katika faili na kutumia sintaksia iliyo hapa chini kuisoma:

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

Katika amri hapo juu, bendera:

  • -s - humwambia curl kufanya kazi kimya.
  • -w - chapisha maelezo kwenye stdout.
  • -o - inayotumika kuelekeza towe (hapa tunatupa pato kwa kuielekeza kwa /dev/null).

Kwa tovuti za HTTPS, unaweza kuendesha amri hapa chini:

$ 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

Katika umbizo hapo juu, vijiwezo vipya vya wakati ni:

  • time_appconnect - muda, kwa sekunde, ilichukua kutoka mwanzo hadi SSL iunganishe/kupeana mkono kwa seva pangishi ya mbali ikamilike.
  • time_redirect – muda, katika sekunde, ilichukua kwa hatua zote za uelekezaji kwingine ikijumuisha kutafuta jina, kuunganisha, kuhamisha kabla na kuhamisha kabla ya shughuli ya mwisho kuanza; inakokotoa muda kamili wa utekelezaji kwa maelekezo mengi.

Mambo muhimu ya kuzingatiwa.

  • Utagundua kuwa thamani za muda wa kujibu zinaendelea kubadilika (kutokana na sababu kadhaa) unapofanya majaribio tofauti, kwa hivyo inashauriwa kukusanya thamani kadhaa na kupata kasi ya wastani.
  • Pili, kutokana na matokeo ya amri zilizo hapo juu, unaweza kuona kwamba kufikia tovuti kupitia HTTP ni haraka zaidi kuliko HTTPS.

Kwa habari zaidi, angalia ukurasa wa mtu wa cURL:

$ man curl

Mwisho lakini sio uchache, ikiwa matokeo yako hayafurahishi, basi una marekebisho kadhaa ya kufanya kwenye seva yako au ndani ya nambari. Unaweza kufikiria kutumia mafunzo yafuatayo ambayo yanaelezea programu na vidokezo vya kufanya tovuti zipakie haraka katika Linux:

  1. Sakinisha Nginx kwa Ngx_Pagespeed (Uboreshaji wa Kasi) kwenye Debian na Ubuntu
  2. Hakikisha Utendaji wa Nginx ukitumia Ngx_Pagespeed kwenye CentOS 7
  3. Jifunze Jinsi ya Kuharakisha Tovuti Kwa Kutumia Nginx na Moduli ya Gzip
  4. Jinsi ya Kuongeza Kasi ya Mtandao ya Seva ya Linux kwa TCP BBR

Ni hayo tu! Sasa unajua jinsi ya kujaribu wakati wa majibu ya tovuti kutoka kwa mstari wa amri. Unaweza kuuliza maswali kupitia fomu ya maoni hapa chini.