分享下之前项目性能测试时遇到的各种性能问题及解决思路、方法,欢迎同行交流!
问题描述:对某仓储系统接口压测,在10并发测试findWithGroup()箱装时,发现应用服务器CPU占用达70%以上,且停止测试后CPU资源未释放,如下图:
问题分析:程序中未对创建使用后的多个线程进行及时关闭,且随着压测时长的增加,线程数不断累加。经与开发同事确认,代码中会存在线程创建使用后未及时关闭的情况。如下图:
解决措施:经代码优化(结束所有无用线程,缩短获取线程结果时间(100ms改为10ms,获取一次值),回归测试后确认此问题修复。如下图:
测试成果:优化后服务器CPU资源及时释放、线程数累加现象。
如觉得对你有帮助,请记得点个赞,感谢支持....