性能测试碎片
1、内存比硬盘贵100倍,速度也比硬盘快100倍
内存的页交换率:内存和硬盘之间的数据交换,越低越好
2、进行系统级的性能优化时,重点利用好缓存机制,其次才是代码级的性能优化,如:优化算法(减少运算次数、减少内存等)、SQL语句
3、线程主要消耗的是CPU资源,而CPU资源是有限的,当CPU到100%后,排队,而不是像内存直接崩。
4、为什么需要思考时间?可以模拟真实场景,且思考时间的大小应该是不一样的。施压时,建议不要设置过长的思考时间。
5、集合点只适用于并发测试,主要用来关注大用户量并发时的表现,它不能模拟真实场景,所以用了集合点就不要考虑模拟真实场景了。
先到的事务会等,所以集合点函数一定不能放到事务函数内。
6、60%以上的性能问题可能与数据库有关。
7、性能测试的策略,传统方式一般是按照梯度施压的方式,而互联网方式则直接吞吐量模式(TPS模式)+设置起始和目标最大量级
性能测试数据需要多次采集,以减少外部因素带来的误差。
8、进程:资源的拥有者>线程>协程
Jmeter:线程->人
Loadrunner:默认是线程,也可以用进程->手
python+locust:协程->手指
ngrinder:groovy语言,进程+线程
9、从用户角度感受到的性能指标:
响应时间、吞吐率、每秒事务数
10、前端:
webp格式的图片对比jpg和png格式的图片,拥有更小的提及,并拥有肉眼识别无差异的图像质量的优势。
连续的大js文件会导致请求响应时间加长,并消耗更多的流量,所以要尽可能减少大js文件的数量。
H5端图片、css、js等资源,尽量不存在大于100k的资源,连续的大js文件总和尽量不超过200k。
11、前端性能优化:chrome开发者自带,直接集成了Lighthouse,F12进入开发者调试模式
Audits选项,点击Run audits等待生成评估界面

浙公网安备 33010602011771号