-
响应时间
-
当前并发的用户数
-
请求数
-
请求的错误率等等。
2.用户体验性能
用户实际感觉网页是否加载延迟
-
首屏时间
-
白屏时间
-
完全加载时间之类
3.系统性能
这类指标重点查看服务器:
-
服务器的cpu
-
内存
-
网络带宽
-
流量等等物理资源。
对于上述的每一类,衡量标准可能都不一样,在数据展示方面,主要通过趋势图和汇总表格来展现,下面来对这3类指标分别细说:
感知系统性能
这类指标主要为工程师设计,来衡量业务后端的处理速度,主要从以下几个方面去衡量:
1) 响应时间
响应时间是性能的主要kpi。
首先对每个业务的整体(集群)响应时间有个衡量:
-
95%的响应时间:将一段时间内所有请求的响应时间中取一个值,使95%的请求响应时间均小于或等于它,此值即为95%请求覆盖的响应时间。
-
90%的响应时间:将一段时间内所有请求的响应时间中取一个值,使90%的请求响应时间均小于或等于它,此值即为90%请求覆盖的响应时间。
-
50%的响应时间:将一段时间内所有请求的响应时间中取一个值,使50%的请求响应时间均小于或等于它,此值即为50%请求覆盖的响应时间。
另外为了方便工程师的优化,对具体到每个请求url都做了更精细化的统计,不光统计了上述的指标,还增加了:
-
最大响应时间:某请求的某段时间范围内响应时间的最大值。
-
最小响应时间: 某请求的某段时间范围内响应时间的最小值。
-
时间标准差:某请求某段时间范围内的波动情况,用来衡量某请求是否存在很大波动,标准差越大,波动越大。
2)请求数(按天或小时统计)
根据不同的时间维度去统计系统每天或每小时的请求数。
3)错误率
关于错误率的统计主要有以下几种:
-
connection timeout:http请求中出现504的次数和比例。
-
error response:http请求中出现500的次数和比例。
-
错误网关数:http请求中出现502的次数和比例。
-
异常日志统计:统计业务中出现得异常的数量和趋势。
用户体验性能
这类指标从用户的角度出发,通过模拟用户请求或对真实用户抽样,来监控用户对网站的实际体验效果,主要利用js来收集不同浏览器下访问网站的加载速度和性能;对于一次完整用户请求来说,http请求可以划分为如下几个阶段:
-
DNS:域名解析阶段,通常在几毫秒左右
-
TCP:建立网络连接
-
Requesting:发送请求
-
WebServer处理
-
Transferring:传输数据
-
Parsing:浏览器解析。几个重要的时间点为:
-
a. 首屏时间 客户端第一屏资源加载完毕
-
b. domready时间 DOM解析完毕,可以进行动态修改
-
c. load时间 所有资源加载完毕
对于上述的几个阶段,设立了多种时间参数(每个参数又有 90% 和 50% 两种指标)来衡量,具体如下:
-
查找域名:开始查找域名到查找结束,计算公式为(domainLookupEnd - domainLookupStart)
-
建立连接:开始发出连接请求到连接成功,计算公式为(connectEnd - connectStart)
-
请求文档:开始请求文档到开始接收文档,计算公式为(responseStart - requestStart)
-
接收文档:开始接收文档到文档接收完成,计算公式为(responseEnd - responseStart)
最后
学习视频:
大厂面试真题:
:开始接收文档到文档接收完成,计算公式为(responseEnd - responseStart)
最后
学习视频:
[外链图片转存中…(img-H257KQTe-1714820538013)]
大厂面试真题:
[外链图片转存中…(img-q6Ie2Zix-1714820538014)]