CPU|这些前后端性能指标,面试一问我就懵了

CPU|这些前后端性能指标,面试一问我就懵了

文章图片

CPU|这些前后端性能指标,面试一问我就懵了

这篇文章讲讲性能测试的定义 , 前后端性能测试的常见基础指标 。
01
性能测试的定义和分类
定义:
观察系统在一个给定的环境和场景中的性能表现是否与预期目标一致 , 评判系统是否存在性能缺陷 , 并根据测试结果识别性能瓶颈 , 改善系统性能的完整的过程 。

分类:

  • 基准测试:单用户 , 发单次请求 , 产出基准性能数据
  • 负载测试:多用户 , 用户数渐增 , 持续同时发同一业务请求 , 产出最大TPS
  • 压力测试:多用户 , 资源使用饱和 , 持续同时发同一业务请求 , 产出系统瓶颈或使用极限
  • 混合场景测试:多用户 , 资源使用不饱和 , 持续同时发不同业务请求 , 验证系统稳定性
02
性能测试的指标
前后端的性能测试关注点和指标是不一样的 。
01
前端关注点
  • 响应时间:用户从客户端发出请求 , 并得到响应 , 以及展示出来的整个过程的时间 。
  • 加载速度:通俗理解为页面内容显示的快慢 。
  • 电量:APP的耗电量 。
  • 流量:APP所消耗的流量

1、加载速度
通俗的理解 , 可以将加载速度视为页面内容显示的快慢 。 拿Google搜索的例子来说 , 从用户输入搜索内容按下enter键 , 到看到搜索出来的内容 , 这个过程的快慢就是加载速度 。 假设选中一个内容点击 , 跳转到一个网页 , 网页的内容显示出来能让用户看见的过程 , 也是加载速度 。
早些年Amazon曾经做过一个统计:网页加载时间每延长1秒钟 , 一年将减少16亿美元的营收 。
一般有哪些方式可以改善加载速度带来的用户体验呢?
  • 减少HTTP重复请求性能黄金法则:只有10%~20%的最终用户响应时间花在了下载HTML文档上 , 其余的80%~90%时间花在了下载页面中的所有组件上 。 因此 , 改善响应时间最简单的途径就是减少HTTP请求的数量 , 并且去除不必要的重复请求 。
  • 使用CDN
    HTTP请求和响应的时间会受到离web 服务器距离的影响 。 如果用户离应用程序的web服务器离用户更近 , 那么多个HTTP请求的响应时间将缩短 。
    CDN(内容发布网络)是一组分布在多个不同地理位置的Web服务器 , 可以选择网络阶跃数最小的服务器 , 或者具有最短响应时间的服务器 , 用于更加有效地向用户发布内容 。
  • 减少下载的资源
    比如通过压缩图片的方式 , 减少图片的大小 , 缩短下载的时间 。 另外可以通过比对客户端与服务端差异的方式 , 快速展示本地的缓存资源 , 减少同样内容的重复下载 。
2、电量
Android的很多特性都比较耗电(屏幕、GPS、唤醒机制、CPU、连网等的使用) 。
3、流量
目前的网络类型包含2G\\3G\\4G\\wifi , 其中还有不同运营商的区分 。 APP 使用过程中 , 常见的网络流量严重消耗的原因主要有 , 调用响应慢 , 调用失败等各种情况 。
通常从哪些指标去衡量流量消耗的状态是否正常呢?