原文:https://www.medianova.com/en-blog/2019/08/06/how-time-to-first-byte-ttfb-impacts-your-sites-performance
众所周知网站速度受许多因素的支配。虽然纷乱如麻,但理清它们并非不可能。这样说来,其中一个你可以尝试去解读和改善的指标就是首字节时间(TTFB,Time To First Byte)。
本文将帮助你彻底理解 TTFB 这一指标对 web 性能造成影响的基础信息。
首字节时间 (TTFB) 是对终端用户首次请求 web 服务器和 web 服务器响应到终端用户之间这段时间的称呼。
使用 DNS 解析站点地址以及取回对发送到站点的首次请求的响应是导致这个时间发生的主要因素。
换言之,这主要发生在以下 3 个步骤中,并且这些阶段中的性能将在 TTFB 期间扮演活跃的角色,分别列出的是各个步骤中可能的重要因素:
实际上,这个问题因你站点的内容而异。取决于站点内容中动态数据和静态数据的占比,对好坏的判断会不同。通常来说,许多速度测试工具会给出以下的范围:
但是完全由动态数据组成的站点实际上会超出这些范围,基于站点内容判断 TTFB 总是会更合理一些。
上面提到过的步骤 1 和步骤 3 中存在的 网络问题 会延长 TTFB。
类似的是,步骤 2 中,在处理请求期间,老旧的硬件和磁盘或内存中的问题会造成速度减慢。
磁盘的低 I/O 值将妨碍快速处理,也将累积许多排队的请求。
同样的,如果服务器硬件不足以应对操作或瞬间的请求峰值,也将导致一个延长的 TTFB。
另外,不优化的代码、数据库,以及 web 服务器配置,也会延宕接收到的请求。
最后,服务器上处理请求的软件也会减慢速度。
了解到痛点之后,可以通过下列手段减少初始化响应时间:
基本上,这也是使用了一个健壮的 CDN 后你将获得的:
实际上,因为首字节开启了数据返回的阶段,所以 TTFB 和后续事务的性能是息息相关的。
优化 TTFB 将确保站点的后续操作更高效。籍由一个好的 TTFB 所铺就的道路,后续的 I/O 操作将会更快。
从另一方面来说,用户体验会因为高性能得到极大改善。因为网站加载得更快了,由于等不及页面加载完就流失掉的潜在用户肯定也就减少了。
--End--