页面响应时间的标准是什么?

8,826 阅读3分钟
  • 前言 在面试中,我们经常会被问到从输入网址到页面展示发生了什么,或者前端的优化建议,我们都很有必要了解下网页响应时间标准是什么?

  • 响应时间

指的是客户发出请求到得到响应的整个过程的时间。在某些工具中,请求响应时间通常会被称为“TTLB”(Time to laster byte) ,意思是从发起一个请求开始,到客户端收到最后一个字节的响应所耗费的时间。

  • 响应时间的计算模型: 响应时间=网络传输时间(请求)+服务器处理时间(一层或是多层)+网络传输时间(响应)+页面前段解析时间

  • 简化的浏览器响应时间的计算模型: 浏览器响应时间 = 服务器响应时间 + 页面装载时间 + 页面渲染时间

页面渲染时间主要包含两个部分: 页面渲染时间 = 脚本执行时间 + 浏览器引擎渲染时间

  • 指导思路:

2-5-10原则
简单说,
就是当用户能够在2秒以内得到响应时,会感觉系统的响应很快;
当用户在2秒以内得到响应时,会感觉系统的响应很快;
当用户在2-5秒之间得到响应时,会感觉系统的响应速度还可以;
当用户在5-10秒以内得到响应时,会感觉系统的响应速度很慢,但是还可以接受;
而当用户在超过8秒后仍然无法得到响应时,会感觉系统糟透了,或者认为系统已经失去响应,而选择离开这个Web站点,或者发起第二次请求。
2秒首页,
5秒
普通页面,
10秒~复杂查询页面。
在进行性能测试时,“合理的响应时间”取决于用户的需求,而不能依据测试人员自己设想来决定。

  • 终端用户响应时间:

就是指从这个用户触发一个页面请求到这个页面被完全展示的时间,有时也被称为浏览器响应时间。 终端用户响应时间是终端用户对一个应用性能的直观感受。它由三部分组成: 页面请求与下载时间(简称页面下载时间)。 服务器响应时间。 浏览器处理及渲染时间。

用一个公式来表示,那就是 : 终端用户响应时间= 页面下载时间+ 服务器响应时间+ 浏览器处理及渲染时间

网络延迟、HTTP 请求数、并发度和消耗的总延迟时间的关系是: 总延迟时间 = 网络延迟 × HTTP 请求数 / 并发度

而页面下载时间的简化模型就是 : 页面下载时间 = 在带宽上消耗的时间 + 在网络延迟上消耗的时间 = 页面尺寸 / 网络带宽 + (网络延迟 × HTTP 请求数)/ 并发度

在这个简化模型中,有些因素没有被考虑 :
DNS 查询时间;
HTTP 请求建立时间;
HTTP 连接的连接保持状态;
浏览器,服务器在处理传输时消耗的时间,等等;
带宽对并发度的影响。
基于这个模型,我们只要测量出页面的尺寸、HTTP 请求数和并发度就可以推测在不同网络条件下的页面下载时间。

  • 总结
    优化是一个庞大的体系,需要大家一点一滴的去认识,去了解。去坚持学习~
  • 最后
    如果伙伴们觉得文章对你的学习有帮助,那就点个赞和关注吧~