发表于: 2016-04-16 20:14:34

1 2232


【操作步骤】
1.在Ubuntu下安装JMeter。
    1.1 下载apache-jmeter-2.13.tgz
    1.2 解压至/usr/local/目录下,并重命名文件夹为jmeter
    1.3 配置环境变量。
        sudo vi /etc/profile
         添加下述两行:
        export JMETER="/usr/local/jmeter/apache-jmeter-2.9"
        export CLASSPATH="$JMETER/lib/ext/ApacheJMeter_core.jar:$JMETER/lib/jorphan.jar:$JMETER/lib/logkit-2.0.jar:$CLASSPATH"
        完成添加后下述命令使配置生效:
        source /etc/profile

2.启动JMeter。参考链接:http://www.360doc.com/content/14/0318/23/16361380_361732630.shtml
    2.1 进入JMeter安装目录下执行sudo ./bin/jmeter.sh
    2.2 添加线程组ITtask_4,设置线程数
    2.3 在线程组中添加http请求,设置好IP和端口号
    2.4 在HTTP请求这个Sampler上右键-->添加-->监听器-->察看结果树,此功能用于debug
    2.5 在HTTP请求这个Sampler上右键-->添加-->监听器-->聚合报告,此功能用来记录执行的http sample的执行结果
3.记录一下每次测试聚合报告的Throughtput值
  测试页面:http://localhost:8080/ITtask_4/pages/home
  线程数:1     Throughtput:58.8/sec
  线程数:10    Throughtput:10.8/sec
  线程数:50    Throughtput:29.7/sec
  线程数:100   Throughtput:44.3/sec
  线程数:500   Throughtput:49.6/sec
  线程数:1000  Throughtput:55.2/sec
  记录这个好像没什么用,可能是我这个页面太简单了,而且又没有数据处理,线程数为1000完全无压力,当线程数达到5000时,出现Error,错误率16.06%,我看了一个错误原因,是页面无响应。这应该就算是程序崩溃了吧。



【知识总结】
1.JMeter中的线程数就相当于同时操作的用户数。
2.TPS:Transaction per second 每秒钟处理的事务数。
  关于事务:一次网络访问中从服务接收到请求(起),到服务完成响应(止)的整个过程就是一个事务;在这个过程中,可能会包含很多环节,例如服务还需要从另外的数据库服务中获取数据,从其他中间件、网络中获取资源,服务内部的程序逻辑需要做数据处理、计算等等,但无论怎样,这些过程都会包含在请求和响应之间;服务完成客户端的这样的一个过程就是完成一次事务,单位时间内(通常用秒)服务能完成多少个这样的事务就是TPS,就是衡量服务处理能力的指标。
3.关于TPS计算,直接在聚合报告中有一个Throughtput参数,这个参数就相当于TPS。
4.JMeter聚合报告中各参数的意义:
  Sample:本次测试场景共运行多少线程;
  Average:平均响应时间;  
  Median:统计意义上的响应时间中值;  
  90% line:所有线程中90%的线程响应时间都小于xx的值;  
  Min:响应最小时间;
  Max:响应最大时间;
  Error:出错率;
  Thougtput: 吞吐量;  
  kb-sec: 以流量做衡量的吞吐量;
5.测试时,线程数分别设为10、50、100、500、1000个,每个用户循环访问一次。
6.每次测试前都要先清除掉以前的测试记录,不然的话Throughtput会变得很小。


【出现的问题(已解决)】



【出现的问题(未解决)】




【疑问】


返回列表 返回列表
评论

    分享到