CPU和内存不高,TPS偏低上不去的常见排查思路

2023-07-31  本文已影响0人  花生草

CPU和内存不高,TPS偏低上不去的常见排查思路

网络带宽限制

优先将压测工具与被测服务部署在同一网络中,跨机房访问时,无论是带宽还是网速,都不如同一网络中的性能表现

硬件资源

出现上述现象时,服务端机器性能并未达到瓶颈,此时对压力端所在服务器排查,是否由于压力端所在服务器已经达到瓶颈,导致无法支持更高压力。例如测试高并发场景时,压力工具开启太多并发线程,端口数不够用等异常情况

缓存影响

压力请求命中缓存时,不再执行剩余的业务逻辑而是直接返回,对CPU和内存压力大大降低,导致无论如何加压,服务端的CPU和内存数据都上不去。检查构造的压力请求特征,是否都是重复的数据。或者关闭服务器端的缓存

线程池

高并发时,压力工具请求的线程数如果超过服务端的线程数,一部分线程被服务器端拒绝连接,或者长时间等待。解决方式是增大服务端的连接池的线程数,以及增大数据库连接池的线程数(如果涉及数据库连接)

垃圾回收

java程序的Young GC和Full GC如果过于频繁,也会影响TPS的提升。一般使用jstat查看进程的垃圾回收消耗时间,最后一列GCT是程序运行期间消耗的总时间

类型 含义
性能测试 正常负载下服务端的各项数据
负载测试 不同负载下的性能数据
稳定性测试 长时间负载下的服务端数据
压力测试 高负载情况下,系统能够承受的最大压力
基准测试 系统摸底测试,作为后续发版的对比标准
上一篇下一篇

猜你喜欢

热点阅读