jmeter之实战总结

jmeter请求参数中,有json数据时,勾选编码;

jmeter csv data set config可以输入相对路径 或绝对路径,如与当前jmx脚本同级的address.txt;输入address.txt;

tomcat线程池调优
tomcat:8080 server.xml maxThreads默认150,改为500;minSpareThreads默认4改为100;
设置tomcat使用的JVM的内存;(JVM调优)
只需要在tomcat的bin目录下catalina.bat文件前面添加一行配置:set JAVA_OPTS=-Xms2048m -Xmx2048m -Xss1024K -XX:MetaspaceSize=512m -XX:MaxMetaspaceSize=512m

 tomcat配置mysql连接池;看了下网上的教程,比较旧,而且写法不一,也没敢配置;

tomcat\conf\context.xml,

打开文件context.xml。

将右侧滚动条拉到最下方,并添加如下图红色框内的代码。

     maxIdle 连接池中最多可空闲maxIdle个连接 
        minIdle 连接池中最少空闲maxIdle个连接 
        initialSize 初始化连接数目 
        maxWait 连接池中连接用完时,新的请求等待时间,毫秒 
        username 数据库用户名
        password 数据库密码
     maxActive:从对象池中取出的对象最大的个数,当设置为0时,表示没有限制。可以根据具体的项目来确定该参数的取值。

也可复制如下代码:

<Resource driverClassName="com.mysql.jdbc.Driver"

maxActive="100" maxIdle="30" maxWait="10000" name="jdbc/test" username="admin" password="admin"

type="javax.sql.DataSource" url="jdbc:mysql://162.168.1.2:3306/xzwjdd"/>

 

察看结果树中结果过多时,显示条数不全,怎么办?jmeter.properties中去掉view.results.tree.max_size=10485760前的“#”;试了,还是不行呜呜

 最近做了web后台+小程序项目,因为要验收,所以需要提交测试用例,测试报告,性能测试报告,so,拼了老命写文档。

编写测试用例思路是这样的,web后台增删改查,然后与数据库数据进行对比;小程序增删改查,然后与web后台进行对比;(若是有误,欢迎留言)

第一次写性能测试报告,没有经验,还好可以参考之前的性能测试报告(窃喜ing~~),但上面使用的lr,好吧,放弃。

在网上找了性能测试模型,打算参考这个https://testerhome.com/articles/20748

单业务基准测试;

  目的:单业务基准测试在服务器没有压力的情况下,获取单笔业务的处理时间,为后续调优提供数据依托。

  策略:线程数1,启动时间1s,循环次数100;

  结果:聚合报告中查看90%响应时间;

单业务负载测试;

  目的:获取系统单笔业务的最大处理能力,以及性能指标之间的关联关系和变化趋势。关注的是最大业务处理能力。

  策略:使用rps定时器,以逐渐加压的方式执行30分钟(无步调,无Think Time),观察性能拐点,同时需要监控服务器资源、数据库处理能力。

  结果:聚合报告90%响应时间,tps,RT,perfmon性能监控图https://www.cnblogs.com/canglongdao/p/13235929.html

  奈何tps波动太大,一下高到最顶峰,一下低到尘埃,而且一直这样持续着,perfmon中监视的图网络Byte Total/sec也达到最顶峰(线上);

  好吧,尝试在局域网测试,tps同样的波形图,perfmon中监视的图disk time也达到最顶峰(线下);因为没有人调试,这样的结果肯定是不正确的,遂放弃;

混合业务负载测试

  目的:考察各业务按比例分配逐渐加压的情况下,系统随着负载变化处理能力趋势。

  策略:使用bzm - Weighted Switch Controller按比例分配,通过逐渐加压的方式执行1-2小时,需监控服务器资源消耗。混合业务负载测试也需要判断拐点,判断方式与单业务负载测试相同。

 

 稳定性测试

  目的:系统长时间处于极限负载下的处理能力,是否随着测试时间的增长,有响应时间变长,内容泄露、磁盘空间不足、等隐藏问题;

  策略:通过阶梯加压的方式执行4小时(也可以是6,8,24*7等,根据实际情况),监控服务器资源。稳定性测试负载压力可以采用系统最大处理能力的70%或80%,或混合场景中的某个压力值。

---------------------------------------------------

与是,采用之前性能测试模型进行测试。例子:8个业务操作,50用户,每个业务操作分配一部分并发用户;

改良一下,如下;

  50用户并发,启动时间50s,持续运行5分钟,等待3s,使用bzm - Weighted Switch Controller分配业务比重,观察聚合报告90%响应时间,服务器性能监控。

  100用户并发,启动时间100s,持续运行5分钟,等待3s,使用bzm - Weighted Switch Controller分配业务比重,观察聚合报告90%响应时间,服务器性能监控。

这次终于测试通过,不过总请求数很低,先将就着用吧。

 =============================================================================

 

 100并发10s启动,持续运行5分钟。tps波形如图;服务器资源监控,基本也达到50%了,下面尝试分析问题。

tps抖动厉害的原因?

  突然增加成倍的用户,如果性能表现良好,TPS应该成倍增加,响应时间不变;如果性能表现一般,TPS增加一些,响应时间增加一些;

  如果性能表现不好,则TPS没啥变化,响应时间增加,而且可能出现抖动现象,因为用户太多,处理不过来。

 

posted on 2020-07-14 15:54  星空6  阅读(364)  评论(0编辑  收藏  举报

导航