1蒙挑、測試過程curl 'https://xx.cnblogs.com/semanticAnalysis/api2?' -d 'app_id=2882303761517406029&token=5651740635029×tamp=1493188096125&queries=[{"query":"打開越野跑","confidence":0.8}]&device_id=robot_aaaUG6LExb9Fsc80taeUv&device={"ip":"192.168.1.1","network":"wifi"}&session={"is_new":true,"id":"","start_timestamp":1493188096125}&request_id=afaaaa&version=2.1' -o /dev/null -s -w '@curl-format.txt'time_namelookup: 0.124time_connect: 0.148time_appconnect: 0.338time_redirect: 0.000time_pretransfer: 0.338time_starttransfer: 0.382----------time_total: 0.382
-w :從文件中讀取要打印信息的格式
-o /dev/null :把響應(yīng)的內(nèi)容丟棄笤闯,因為我們這里并不關(guān)心它仿耽,只關(guān)心請求的耗時情況
-s :不要打印進度條
從這個輸出,我們可以算出各個步驟的時間:
DNS 查詢:124ms
TCP 連接時間: pretransfter(148) - namelookup(124) = 24ms
服務(wù)器處理時間:starttransfter(382) - pretransfer(338) = 44ms
內(nèi)容傳輸時間: total(0.382) - starttransfer(0.382) = 0ms
2伤靠、curl-format.txt文件配置
time_namelookup: %{time_namelookup}\n time_connect: %{time_connect}\n time_appconnect: %{time_appconnect}\n time_redirect: %{time_redirect}\n time_pretransfer: %{time_pretransfer}\n time_starttransfer: %{time_starttransfer}\n ----------\n time_total: %{time_total}\n3旺韭、變量解釋
time_namelookup :DNS 域名解析的時候,就是把 https://zhihu.com 轉(zhuǎn)換成 ip 地址的過程
time_connect :TCP 連接建立的時間君账,就是三次握手的時間
time_appconnect :SSL/SSH 等上層協(xié)議建立連接的時間,比如 connect/handshake 的時間
time_redirect :從開始到最后一個請求事務(wù)的時間
time_pretransfer :從請求開始到響應(yīng)開始傳輸?shù)臅r間
time_starttransfer :從請求開始到第一個字節(jié)將要傳輸?shù)臅r間
time_total :這次請求花費的全部時間