curl分析http请求耗时

先新建一个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}\n

然后发起curl请求。
curl -w "@curl-format.txt" -o /dev/null -s -L "https://baidu.com"

返回如下

单位是秒

    time_namelookup:  0.002834
       time_connect:  0.044624
    time_appconnect:  0.166298
      time_redirect:  0.100450
   time_pretransfer:  0.166663
 time_starttransfer:  1.462707
                    ----------
         time_total:  1.574913

每一项的解析:

time_namelookup:DNS 域名解析的时候,就是把 域名转换成 ip 地址的过程
time_connect:TCP 连接建立的时间,就是三次握手的时间
time_appconnect:SSL/SSH 等上层协议建立连接的时间,比如 connect/handshake 的时间
time_redirect:从开始到最后一个请求事务的时间
time_pretransfer:从请求开始到响应开始传输的时间
time_starttransfer:从请求开始到返回第一个字节将要传输的时间
time_total:本次请求花费的总共时间
具体可以看图:

参考链接:
https://cloud.tencent.com/developer/article/1916475
https://zhuanlan.zhihu.com/p/609213747

发表评论

您的邮箱地址不会被公开。 必填项已用 * 标注

Contents
滚动至顶部