记一次性能测试:无论多少并发,各个应用cpu使用率都很低 的解决过程
在公司做了一次性能测试,也是第一次做性能测试。还好学习了很多知识,才不算那么手忙脚乱。。。
问题:我们这边都是对接口进行压测,压测时发现在逐渐加大并发的情况下,应用cpu的使用率都在30%左右。
环境:我们系统使用Spring Boot+RocketMq+Mysql+Mongo+Jetty。应用,mq,mysql,mongo各部署一台
思路:加大并发的情况下,负载机器的各个系统指标压力不大,但应用的压力怎么也上不去,数据库几乎无压力。
推测是数据库连接池的数量不够
1.但是在mysql部署的机器上修改数据库连接max_connections配置后,发现作用并不大.
2.考虑是否代码中对数据库连接池进行了限制,主要是spring整合druid中的maxActive的值(在代码的配置文件中进行修改),对它进行增大后
发现http://ip:port/druid/datasource.html中最大连接池为8(但配置中已经改为256,其实是spring默认情况下为8),
后来发现是代码加载配置时有问题,开发进行修改代码。
进行修改后最大连接池为修改后的数量。再次进行压测后,当增大并发时,各个应用的cpu使用率上升。