我看到 chrome 开发工具中针对网络请求报告的 Time-To-First-Byte 数字很高。我想改进它,但我不确定请求过程的哪一部分导致速度变慢。
一些消息来源将此衡量标准称为“DNS、SSL、连接、发送、接收、等待”。TTFB的权威定义是什么,如何准确衡量它的碎片?
我看到 chrome 开发工具中针对网络请求报告的 Time-To-First-Byte 数字很高。我想改进它,但我不确定请求过程的哪一部分导致速度变慢。
一些消息来源将此衡量标准称为“DNS、SSL、连接、发送、接收、等待”。TTFB的权威定义是什么,如何准确衡量它的碎片?
使用 Wireshark 作为分析工具来获取请求的详细信息。
wireshark
并设置以在您的网卡上捕获,无论是有线还是无线。在 Bash 控制台上,准备好使用文本浏览器访问https://www.eff.org/w3m
w3m https://www.eff.org/
开始抓包
开wireshark
,应用此过滤器以获取重要事件
域名解析 || ssl.handshake.type == 1 || ssl.handshake.type == 14 || ssl.handshake.type == 4 || ssl.record.content_type == 22 || ssl.record.content_type == 23
分析
DNS :数据包 6
TCP 握手的时间:数据包 10 和 6
TLSv1.2 握手之间的差异:数据包 23 和 10之间的差异
发送 :数据包 23 和 24 之间的差异(?不确定)
TTFB :数据包 27 的时间
浏览器认为的等待时间是请求在服务之前在请求队列中等待的时间。
参考:
http://www.thevisiblenetwork.com/2015/01/21/calculate-http-response-time-in-wireshark/ http://blog.catchpoint.com/2017/05/12/dissecting-tls-using-线鲨/