TTFB - Time To First Byte 第一字节响应时间,就是从发送请求到服务器,加上服务器处理请求并生成、返回响应花费的时间。算是一个测量网站速度的指标,虽然很多人说这个没啥用。
影响 TTFB 的主要因素有三个:
-
CDN
一般网站会将静态内容分发到 CDN,CDN 的内容又会复制到其他地理位置的服务器,以便更接近用户,从而减少 TTFB 的时间。当然动态内容也可以放到 CDN 上,只要及时清除 cache 就行。 -
后端服务器的性能
-
后端服务器软件的和系统的设计
其实 TTFB 作为一个单一指数很难去衡量一个网站的真实速度和用户体验。例如这篇文章讲的。主要就是讲在某些情况下,虽然 TTFB 很快,但是因为数据没有压缩,其实后面数据的传输反而慢,用户看到整个页面需要等待更久。
但是作为被动方,也就是用户,不能控制 server,研究这个也还是有价值的。比如需要实时获取一些数据的时候,如果要更快,你的服务器地址就有讲究了,这个 TTFB 指标就有用。
一般来讲,CDN 不会影响 TTFB,因为都是先加载 html,再是静态文件,例如图片和 css、js 文件等。但是大的 CDN 服务提供商,例如 Cloudflare 这样的,会从 DNS 层就开始控制,所以 DNS 和服务器的 routing 会影响到 TTFB。
CDN 的一大好处就是提供防 DDoS 攻击等安全措施。
网友评论