httping 产生的分割延迟测量结果是多少?

httping 产生的分割延迟测量结果是多少?

我一直在使用httping监控我的负载均衡器的性能。

httping 实用程序接受 -S 参数,该参数在手册页中有简要说明:

-S 将测量的延迟分为连接时间和与 HTTP 服务器交换请求的时间。

输出如下所示:

连接到 [hostname-snip]:80 (284 字节),序列号 = 259,时间 = 0.01+ 21.96+ 23.95+ 0.07+ 0.02= 45.99 毫秒

由此可以清楚地看出,httping 将时间分解为连接/传输/等待(等...)并显示累积输出,但我无法解释每个值的含义。

有人知道这些值各自代表什么含义吗?

答案1

我对此绞尽脑汁。

我在第一个字段中不断获得高值,并认为我在 TCP 连接阶段遇到了问题。

我最终查阅了源代码:

主程序

2232: char *res_str = t_resolve.cur_valid ? format_value(t_resolve.cur, 6, 2, abbreviate) : strdup(gettext("   n/a"));
2233: char *con_str = t_connect.cur_valid ? format_value(t_connect.cur, 6, 2, abbreviate) : strdup(gettext("   n/a"));
2234: char *wri_str = format_value(t_write.cur, 6, 2, abbreviate);
2235: char *req_str = format_value(t_request.cur, 6, 2, abbreviate);
2236: char *clo_str = format_value(t_close.cur, 6, 2, abbreviate);
2237: 
2238: str_add(&line, gettext("time=%s+%s+%s+%s+%s%s=%s%s%s%s ms %s%s%s"), res_str, con_str, wri_str, req_str, clo_str, sep, unsep, ms_color, tot_str, c_white, c_cyan, sc?sc:"", c_white);

这表明httping -S的输出如下:

时间 = [DNS 解析时间] + [TCP 连接时间] + [HTTP 传输时间] + [HTTP 接收时间] + [TCP 关闭时间] = [总时间]

相关内容