• 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连接池;看了下网上的教程,比较旧,而且写法不一,也没敢配置;

    tomcatconfcontext.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没啥变化,响应时间增加,而且可能出现抖动现象,因为用户太多,处理不过来。

    越努力,越幸运!!! good good study,day day up!!!
  • 相关阅读:
    使用电脑模拟微信内置浏览器
    手机QQ浏览器属于代理服务器吗?
    艾伟:[你必须知道的.NET]第三十二回,深入.NET 4.0之,Tuple一二 狼人:
    艾伟:Silverlight 2.0在IE6 SP2上的虚线边框问题 狼人:
    艾伟:ASP.NET安全问题--Forms验证(后篇)--实战篇 狼人:
    艾伟:基于.NET平台的Windows编程实战(四)—— 数据库操作类的编写 狼人:
    艾伟:WMGPS开发 狼人:
    艾伟:基于.NET平台的Windows编程实战(一)——前言 狼人:
    艾伟:.NET,你忘记了么?(八) 从dynamic到特性误用 狼人:
    艾伟:小巧优美的ORM框架doodads入门指南[转载] 狼人:
  • 原文地址:https://www.cnblogs.com/canglongdao/p/13235026.html
Copyright © 2020-2023  润新知