目录:导读
- 前言
- 一、Python编程入门到精通
- 二、接口自动化项目实战
- 三、Web自动化项目实战
- 四、App自动化项目实战
- 五、一线大厂简历
- 六、测试开发DevOps体系
- 七、常用自动化测试工具
- 八、JMeter性能测试
- 九、总结(尾部小惊喜)
前言
1、Tomcat链接数分析
1)影响性能的线程状态
BLOCKED,如果线程中有BLOCKED,就代表有阻塞情况,需要进行排查;
TIMED_WAITING,如果线程中有TIMED_WAITING,就代表有等待的情况,要分情况来排查;
a> 系统线程在等待(如果以java.*,并且线程快照信息比较短,可以忽略);
b> 业务线程在等待(如果以com.,cn.,org.*,线程快照信息比较长,需要重点关注);
2)数据库连接池
项目启动时,会提前创建N个数据库链接,然后存放到连接池中,如果需要执行SQL的时候,可以直接从连接池中拿到一个链接使用,使用完毕后,再放回连接池中。
3)如何确定连接池中的连接数是否不足?
线程快照,大量业务线程正在等待获取链接;
查看连接池配置,确定最大允许的连接数是多少,然后监控数据库当前连接数,判断是否达到上限;
4)如何查看服务器链接数?
yum install -y net-tools
nestat -anp | grep 3306
netstat -anp | grep 172.21.0.16:3306 | grep 14963 | wc -l
5)如何配置连接池参数?
初始连接数:1-10
最小连接数:和初始值保持一致
最大连接数:几十个,通常50个够用,不建议超过100
6)查看数据库本身的连接数
最大连接数:show variables like '%connection%'
,MySQL默认最大连接数是150,修改/etc/my.cnf
当前连接数:netstat -anp |grep 172.21.0.16:3306 | wc -l
7)Tomcat连接数
/usr/src/tomcat-pinter/conf
vi server.xml
在端口号处添加:
maxConnection="15000"
acceptCount="200"
maxConnection默认值10000
acceptCount默认值100
最大支持的连接数=10100
8)Redis连接数
默认最大连接数:maxClient=10000
9)Nginx连接数
最大连接数=worker的数量(CPU的核数)* 每个worker支持的最大连接数(默认1024)
2、Jprofiler定位接口相应时间长问题
1)环境准备
执行压测脚本,分析该接口tps很低,响应时间很长
高频接口100ms以内,普通接口200ms以内
2)JProfiler分析响应时间长的方法
jprofiler录制数据
压测脚本,执行1-3分钟即可
分析接口相应时间长的方法
通过Method Statistics查看耗时比较长的方法
通过call Tree可以查看详细信息
下面是我整理的2023年最全的软件测试工程师学习知识架构体系图 |
一、Python编程入门到精通
二、接口自动化项目实战
三、Web自动化项目实战
四、App自动化项目实战
五、一线大厂简历
六、测试开发DevOps体系
七、常用自动化测试工具
八、JMeter性能测试
九、总结(尾部小惊喜)
人生短暂而珍贵,唯有不断努力和奋斗,才能让它变得更加精彩和意义非凡。让我们携手并进,共同面对挑战,铸就属于自己的辉煌!
努力不是为了证明给别人看,而是为了让自己变得更好。付出和坚持,终将换来收获与成就。相信自己的能力,勇敢追逐梦想!
任何伟大的成就都始于一个勇敢的决定。珍惜每一个机会,放手一搏,相信自己的实力和能力,为自己的梦想而奋斗!