從Ubuntu終端使用cURL衡量網站的速度

關於使用cURL測量Web的速度

在下一篇文章中,我們將研究如何 使用cURL從終端測量網站的響應時間。 知道這很有趣,因為它會對用戶體驗產生重大影響。

無論您是Web開發人員還是管理服務器,您都將知道 速度 它應該總是準備就緒。 重要的是,一切正常運行,以使用戶在訪問您的網站時不會感到沮喪。

接下來,我們將看到一些能夠執行的命令 測量網站的響應時間。 有了他們,我們將能夠 檢查http和https頁面不同字段的時間(以秒為單位)。 我們將使用cURL從Ubuntu命令行執行所有操作,

使用cURL衡量加載速度

來自具有HTTP的網站

http網站的速度控制

cURL有許多可用的選項,其中我們可以找到 -w,這將對 將信息打印到標準輸出 完成操作後。 它還為我們提供了一些 我們可以用來測試不同響應時間的變量 網站。

為了實現這一衡量,我們將使用一些可以在 cURL官方文檔。 這些可以以給定格式作為文字字符串或在文件中傳遞。

我們將使用以下變量:

  • 時間名稱查找 →時間以秒為單位。 被採取 從創建到名稱解析完成.
  • 時間連接 →時間以秒為單位。 從啟動到完成與遠程主機的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 / etc連接完成.
  • 時間重定向 →時間(以秒為單位) 在最終交易開始之前的所有重定向步驟。 計算多次重定向的總執行時間。

與前面的情況一樣,它也可以寫入文件。 與前面的情況一樣,我會 通話 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

科莫 響應時間值將因不同因素而改變,建議進行不同的測試並建立平均速度。 我們還將看到的是,通過HTTP訪問網站通常比通過HTTPS訪問網站要快得多。


發表您的評論

您的電子郵件地址將不會被發表。 必填字段標有 *

*

*

  1. 負責數據:MiguelÁngelGatón
  2. 數據用途:控制垃圾郵件,註釋管理。
  3. 合法性:您的同意
  4. 數據通訊:除非有法律義務,否則不會將數據傳達給第三方。
  5. 數據存儲:Occentus Networks(EU)託管的數據庫
  6. 權利:您可以隨時限制,恢復和刪除您的信息。