我这边同样的流量,进行性能压测,比对 cpu 和 p95 的数据,但是差距大于 10%。求教落地经验
性能压测是在测试 pipeline 中,用来评估 pr 对性能的影响是否有衰减。因此使用 main 分支和 pr 分支,分别部署压测进行对比的方案,目前对比是 cpu 和 p95
但有时 p95 差距较大,目前看有可能是依赖接口用线上接口导致,因为不同的压测时间,线上性能不一致,因此影响了压测数据的准确性。
想帮助你,但是没看懂你在问什么。
建议补充以下信息:
我这边也出现过 这边同样的流量,进行性能压测,比对 p50 和 p99 的数据,但是差距大于 20%
如果 20% 差距不符预期,那大概是有那种随着请求量堆积越来越慢的性能问题类型;排查一下锁、缓存、SQL 耗时、线程这些经常带坑的地方
当 p50/p99/avg 的差距都过大时,本次测试结论参考性是不是就会下降,场景构造是不是就需要进行一定的调节或者分裂细化
是的,场景构造细分也是一个缩小范围定位的过程。如果有等价场景的历史基线数据供对比(如线上同场景的性能数据),其实参考性也足够了,就是明确有问题。
1、目标是检测 pr 分支的代码改动是否造成性能衰减 2、goreplay 流量回放 3、验证性能指标是否有提升,譬如 cpu 和 latency