zoukankan      html  css  js  c++  java
  • 压力测试工具 Apache_jmeter软件配置+TCP示例说明 + jpgc插件安装

    该软件jmeter是Apache官方开源压力测试软件.  jmeter官网:http://jmeter.apache.org/  . 本文使用的版本是 3.0版本, 它需要jdk7及以上版本支持.

     网盘下载 : 链接:http://pan.baidu.com/s/1i5lDeDJ 密码:4qes

    安装: 参考 http://www.cnblogs.com/benpao1314/p/5953565.html 

    1,  下载后无需安装,解压后即可使用;

    2,配置环境变量

                 新增 JMETER_HOME = “D:developapache-jmeter-3.0” 

                  CLASSPATH变量,加上%JMETER_HOME%libextApacheJMeter_core.jar;%JMETER_HOME%libjorphan.jar;%JMETER_HOME%liblogkit-2.0.jar;

    3. 操作完上面的步骤,我们就可以点击Jmeter中bin目录下面的jmeter.bat文件即可打开Jmeter了。
        (注意:打开的时候会有两个窗口,Jmeter的命令窗口和Jmeter的图形操作界面,不可以关闭命令窗口)

    使用:参考 http://blog.csdn.net/liuxiao723846/article/details/52670046

    1、添加线程组:

    测试计划 -> 添加 -> Threads(User) -> 线程组

    线程数:表示将模拟多少个用户进行测试。
    Ramp-Up Period(in seconds):线程启动间隔,所有线程将在这个时间内依次启动。
    循环次数:所有线程执行一次为一次循环。

    如果线程数为200 ,循环次数为10 ,那么每个线程发送10次请求。总请求数为200*10=2000 。如果勾选了“永远”,那么所有线程会一直发送请求,直到选择停止运行脚本。

    2、添加采样器:
    采样器可理解为针对前面创建的线程需要做什么事情,这里以添加HTTP请求为例。
    线程组 -> 添加 -> Sampler -> TCP请求

    3、添加监视器
    监视器可以理解为针对结果的不同查看方式。JMeter里提供了多种结果表现形式。

    问题1, 中文显示乱码,  在jmeter/bin/jmeter.properties

     jsyntaxtextarea.font.family=宋体

    sampleresult.default.encoding=UTF-8

    问题2,jmeter java.lang.OutOfMemoryError: Java heap space

    changed HEAP settings in jmeter.bat from

    -Xms512m -Xmx512m

    to
    -Xms2048m -Xmx2048m

    同时由于我的线程特别多几万个,故我把配置里面的 线程组 复选框 Delay Thread creation until needed 勾上了.

    最终的配置例子

     

     

     

    执行了10个小时,9万个样本 的客户信息查询交易的压力测试结果:
     
    吞吐量在 135-148之间 (前10000条样本在 145以上 中间慢慢掉到140以下,但最后又回到了145左右)
     
     
    Lable:请求取样器名称                                                       客户信息查询
    Sample:总请求数                                                             90000
    Average:平均每个请求的处理时间                                       447
    Median:表示50%的请求所用的时间都是没超过这个值             435
    90Line:表示90%的请求所用的时间都是没超过这个值               466
    95Line:表示95%的请求所用的时间都是没超过这个值               559
    99Line:表示99%的请求所用的时间都是没超过这个值               686
    Min:请求的最小响应时间                                                    0
    Max:请求的最大响应时间                                                   2340
    Error:错误请求的百分比                                                     0.02%
    Throughput:以request个数/second来衡量的吞吐量              2.4/sec
    Kb/sec:以Kilobytes/seond来衡量的吞吐量                          1.2
     

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

    简单的压力测试情况(几分钟的效果):

     

     

     

     

    1.身份验证
    00493{"head":{"BisUid":"AAAS0000293171016200305008192","TransCode":"2201","MsgType":"0200","ExSerial":"008192","Acctoper":"8001","TradeType":"2222","BranchNo":"82801","Channel":"vcm","TermNo":"S0000293","TermIp":"192.168.1.72","TransDate":"20171016","TransTime":"200305","TermNoInn":"S0000293","TopBranchNo":"82","BatchNo":"","Token":"","AreaCode":"","EncodeType":"2"},"body":{"OpsitBrhNo":"313675090019","BusinessType":"01","OpsitTellerNo":"355","IdCode":"610528198811203033","CustName":"杨伟"}}

    2.客户信息查询
    00589{"head":{"BisUid":"AAAS0000293171016200307008193","TransCode":"2525","MsgType":"0200","ExSerial":"008193","Acctoper":"8001","TradeType":"2222","BranchNo":"82801","Channel":"vcm","TermNo":"S0000293","TermIp":"192.168.1.72","TransDate":"20171016","TransTime":"200307","TermNoInn":"S0000293","TopBranchNo":"82","BatchNo":"","Token":"","AreaCode":"","EncodeType":"2"},"body":{"OperFlag":"3","IdType":"0","IdCode":"610528198811203033","AcctNo":"","CustName":"杨伟","IdIssuUnit":"","Sex":"男","OfficPhone":"","HomePhone":"","Mobile":"","ContactAddr":"","PostId":"","Email":"","WorkUnits":""}}

    补充安装一个插件,先看看该插件的效果.

    插件所需要的Jar包下载  https://jmeter-plugins.org/install/Install/

    下载plugins-manager.jar文件,将其放在jmeter安装路径下/lib/ext/目录下

      重启jmeter工具在options选项下即可看见Plugins Manager选项,如图所示:

     搜索插件名"jpgc" 进行安装,我这里是已自己安装了故出现在了已安装插件里面

    ----------- 赠人玫瑰,手有余香     如果本文对您有所帮助,动动手指扫一扫哟   么么哒 -----------


    未经作者 https://www.cnblogs.com/xin1006/ 梦相随1006 同意,不得擅自转载本文,否则后果自负
  • 相关阅读:
    基于java容器注解---基于泛型的自动装配
    mininet+floodlight搭建sdn环境并创建简单topo
    Bean装配之@Autowired注解
    Linux常用命令
    Bean利用Resource接口获取资源的几种方式
    MYSQL分页优化查询
    MYSQL统计和识别重复值
    MYSQL统计和识别重复值
    MYSQL处理数据重复值
    MYSQL处理数据重复值
  • 原文地址:https://www.cnblogs.com/xin1006/p/7698173.html
Copyright © 2011-2022 走看看