zoukankan      html  css  js  c++  java
  • Tomcat压力测试—Jmeter

      通过调整参数以及配置优化Tomcat

        1.在Tomcat上部署一个Web项目

      将项目放到Tomcat解压目录的Webapps下

      1.2 修改连接数据库参数

        进入项目找到 并修改jdbc.propertise文件  修改为自己数据库的连接参数

       1.3  启动Tomcat'访问Web项目

       2.Jmeter压力测试工具

      将Jmeter压力测试工具解压进入bin目录

       2.1修改语言

      2.2 新建 一个线程组   右键Test Plan>添加>线程>线程组

      2.3 新建一个HTTP协议取样器  右键线程组>添加>取样器>HTTP请求

      2.4 新建一个查询结果,点击启动进行测试   右键HTTTP请求>添加>监听器>用表格查看结果和聚合报告

      3. Tomcat没有进行任何配置的情况

      平均请求处理时间:6653
      Error错误率:0.00%
      吞吐量:142/S

      

       3.1 优化方案一:禁用AJP服务   修改server.xml文件

       

        测试

      平均请求处理时间:4930
      Error错误率:0.0%
      吞吐量:192/S

       禁用AJP服务后吞吐量有所提升  测试不一定准所以要多测几遍

      3.2 优化方案二:启动执行器(线程池)

        测试一:最多线程为500,初始为50  修改server.xml文件

       测试

      平均请求处理时间:4760
      Error错误率:0.0%
      吞吐量:201/S

      吞吐量有所提升

        测试二:设置最大队列等待个数 

         测试

     数据相较上一种测试稍显不理想

      测试三 :将运行模式该为noi2

      测试

     可以看出 nio2性能要高于nio

      4.调整JVM参数进行优

    接下来,测试通过jvm参数进行优化,为了测试一致性,依然将最大线程数设置为500,启用nio2运行模式。
        4.1设置并行垃圾回收器并生成日志
     
         4.2 查看生成的日志
        4.3 测试

        4.4 将生成的日志上传到gceasy.io查看

      问题一:

        年轻代的gc有74次,次数稍有多,说明年轻代设置的大小不合适需要调整
        FullGC有8次,说明堆内存的大小不合适,需要调整 

       问题二:

        从GC原因的可以看出,年轻代大小设置不合理,导致了多次GC。
     
      4.5 调整年轻代大小
        将初始堆大小设置为128m,最大为1024m 

        如图调整后GC次数减少

        4.6  设置G1垃圾回收器

      暂停时间缩短

  • 相关阅读:
    sql server 错误9003:LSN无效(日志扫描号无效),对数据库的修复.
    用C#调用C++DLL时的字符串指针参数传递问题
    sql server 2005中的Service broker小示例(未完善)
    水晶报表钻取数据,在明细层导的时候,报表会从新加载,并显示主报表
    [转]gridview获取当前行索引的方法
    验证视图状态 MAC 失败的解决办法
    SQL SERVER 2005中对存储过程进行签名(转)
    MSChart图表控件的一些使用
    Repository模式
    职能式管理和流程式管理
  • 原文地址:https://www.cnblogs.com/szhhhh/p/12457807.html
Copyright © 2011-2022 走看看