性能测试策略和关注指标

平常不写博客,跑路时总归得做个总结,不过其他的都是能百度到的东西,只有性能测试的实践算是有自己的体会。

 

常用的工具是jmeter和locust,各有好坏,个人现在习惯纯代码式的locust,方便场景组合。

 

性能测试常见场景:

1.新产品架构完成,编码完成 后,测试最大负载和稳定性

2.产品中应用新的组件,测试新组件和旧代码之间的性能差距。如何比较差距,一般是相同条件,在新旧代码分支压测最大负载和稳定性,互相对比。

 

性能测试中关注的指标:

1.响应时间 ,平均,90%,最大,最小时间。响应慢,查询慢sql.

2.TPS,时间不足,直接压复合场景的话,简单计算单接口tps需要rps*接口数

3.机器性能,CPU,内存,一般70%以下可认为性能问题不大,再往上可能引起后续压测接口报错甚至服务停止

4.如果发现CPU占用非常快,top检查对应的线程占用,是否死循环,GC频繁等

5.内存占用高,是否写的操作太多,是否内存回收设置不合理,导致内存泄漏等

6.其他指标,IO,网络

指标性能好坏可参考下表:

 

性能项

资源

评价

CPU占用率

70%

85%

90%+

很差

磁盘I/0

<30%

<40%

<50%+

很差

网络

<30%带宽

运行队列

<2*CPU数量

内存

没有页交换

每个CPU每秒10个页交换

更多的页交换

很差

posted @ 2022-03-29 16:34  子唯  阅读(160)  评论(0编辑  收藏  举报