用curl測網速統計訪問耗時
??在《從基礎到高級,帶你結合案例深入學習curl命令》中,介紹了curl的使用方法,這里介紹一個用于統計響應耗時的最佳實踐,助力老鐵們合理設置網絡超時時間。
??下面介紹一個用于統計訪問某個URL耗時的常用組合技能命令,例如線上環境遇到502 Bad Gateway問題或者java.net.SocketTimeoutException異常,就可以用它確認請求鏈路是否擁堵。要查看 curl 請求的耗時,可以使用 -w 或 --write-out 選項來輸出詳細的時間統計信息。以下是一些常用的變量,可以用于查看請求的各個階段的耗時(以秒為單位):
- url_effective:跟蹤重定向后的URL地址;
- time_namelookup:DNS解析耗時;
- time_connect:建立連接所消耗的時間,就是TCP三次握手的耗時;
- time_pretransfer:從請求開始到響應開始傳輸的耗時;
- time_starttransfer:從請求開始到第一個字節即將被傳輸的耗時;
- time_redirect:從開始到最后一個請求事務的耗時;
- time_total:統計整個請求花費的全部耗時。
??例如,以下命令將輸出訪問http://www.rzrgm.cn/east7的耗時情況:
curl -o /dev/null -s -w "Testing website response time for: %{url_effective}\nDNS解析耗時: %{time_namelookup}\n連接耗時: %{time_connect}\n開始傳輸耗時: %{time_starttransfer}\n總耗時: %{time_total}\n" http://www.rzrgm.cn/east7
統計網絡訪問耗時
??在上述案例中,-o /dev/null 用于屏蔽輸出內容,-s 用于以靜默模式隱藏進度條,-w 用于格式化輸出想要的時間信息。
讀后有收獲,小禮物走一走,請作者喝咖啡。
Buy me a coffee. ?Get red packets.作者:樓蘭胡楊
本文版權歸作者和博客園共有,歡迎轉載,但請注明原文鏈接,并保留此段聲明,否則保留追究法律責任的權利。

浙公網安備 33010602011771號