乐虎游戏|乐虎国际登录|欢迎你

GA电子游戏:非GUI格局下Window下推行jmeter质量测验(登陆)

日期:2019-11-02编辑作者:计算机资讯

引言: 互连网服务压测是这几个关键的评论和介绍格局,ab,webbench,jmeter等都是产业界流行的测量检验工具,ab和webbench作为shell方式下轻量级的测量检验工具,jmeter则作为有GUI分界面包车型客车更加高等测量检验工具,各有特点,ab比webbench成效越来越多一些,所以这边采取ab和jmeter来做一个比照。

1.下载jmeter,假如Computer早就有了java遭遇(安装配置完毕的JDK景况),直接解压到对应的目录,配置境况变量JMETEPRADO_HOME和path,配置后,在设置目录下找到bin下的jmeter.bat,双击,就能够运维jmeter,运营进程中在jmeter.bat分界面假诺报错,就复制报错音信,搜索解决的方法,经常都比较简单。

【测验情状的设置】
【ab】

2.在测量检验安插右击,增加,线程组,选重线程组,右键,加多,采集样本器(sampler),选用http乞求,在http恳求分界面输入IP,端口号,常常是80,方法,路线,把需求的参数加多上。

ab就是Apache Benchmark的缩写,看名就能猜到其意义它是Apache组织开辟的后生可畏款web压力测量检验工具,优点是使用方便,总括功效强盛。

3.在线程组上加多查看结水果树,聚合报告,在集结报告分界面,点击浏览需求成立贰个.jmx文件,名称自个儿制定。点击纯白按键运维,在翻看结水果树分界面查看运营结果,假诺成功了,须求改进线程数和ramp-up period(运营全部线程所须要的时光),然后保留此测量试验布署。

ab作为生机勃勃款相当火的压测工具,使用细节这里就相当少介绍了,直接付出个人的运用体会:

4.在DOS界面,步入到jmeter的bin目录,然后,输入比方如下内容,D:apache-jmeter-3.2bin>jmeter -n -t D:JMeterTestplanlogin.jmx -l D:JMeterTestresult100.jtl      其中D:apache-jmeter-3.2bin>
为目录,jmeter -n -t D:JMeterTestplanlogin.jmx    指在非GUI下(-n)运转钦点脚本(-t)D:JMeterTestplanlogin.jmx(这些渠道下的文书正是测量试验布署保存的文书),-l D:JMeterTestresult100.jtl点名(-l)内定测量检验结果保存的文书,即日志文件

先是是设置,Ubuntu和CentOS一时都提供自动安装命令 (最少ubuntu 14, centos 6可以)

5.实践测量检验,分界面显得如下内容:

ubuntu:sudo apt-get install apache2-utils

Creating summariserCreated the tree successfully using D:JMeterTestplanlogin.jmx

centos:yum install httpd-tools

Starting the test @ Tue Sep 19 11:56:27 CST 2017 (1505793387165)

设置好以往就可以初始打开测试。

Waiting for possible Shutdown/StopTestNow/Heapdump message on port 4445

ab通平常用参数正是 -n, -t ,和 -c。

summary +    22 in 00:00:02 =    9.3/s Avg:  162 Min:    57 Max:  476 Err:    0 (0.00%) Active: 2 Started: 23 Finished: 21

-c(concurrency)表示用略带并发来拓宽测量试验;

summary +    78 in 00:00:08 =  10.0/s Avg:    83 Min:    45 Max:  226 Err:    0 (0.00%) Active: 0 Started: 100 Finished: 100

-t表示测量检验持续多久;

summary =    100 in 00:00:10 =    9.8/s Avg:  100 Min:    45 Max:  476 Err:    0 (0.00%)

-n代表要发送多少次测量试验央浼。

Tidying up ...    @ Tue Sep 19 11:56:37 CST 2017 (1505793397939)

貌似-t或然-n选三个用。

... end of run

对于模拟GET央求进行测验,ab特别轻巧,正是:ab -n 100 -c 10 ''

6.如上代码表示施行成功,能够在jmeter分界面包车型客车聚焦报告查占星应的文本,查看具体的运作境况。

对于模拟POST央求进行测量检验,则有个别复杂些,须要把将要post的数码(平常是json格式)放在文件里。比方一个post接口需求如下格局访谈

curl -H 'Content-Type:application/json' -X POST  -d '{"actionType":"collect","appId":1,"contentId":"1770730744","contentType":"musictrack","did":"866479025346031","endType":"mobile","recommendId":"104169490_1_0_1434453099#1770730744#musictrack#USER_TO_SONG_TO_SONGS#gsql_similarity_content2content","tabId":0,"uid":"104169490"}'

须要吧-d 后边的json数据放在叁个文本里,举个例子创建多个文件post_data.txt,放入:

{"actionType":"collect","appId":1,"contentId":"1770730744","contentType":"musictrack","did":"866479025346031","endType":"mobile","recommendId":"104169490_1_0_1434453099#1770730744#musictrack#USER_TO_SONG_TO_SONGS#gsql_similarity_content2content","tabId":0,"uid":"104169490"}

下一场用-p参数分析并发送那么些json数据:ab -n 100 -c 10 -p post_data.txt -T 'application/json'

【Jmeter】
jmeter是多个十分有力和客商本身的GUI工具,http访问的参数设置基本周到,软件的help里的客商手册图例比较丰硕,对于初读书人的话很好上手

对此http测量试验的可布署参数有(1)http诉求配置:测量试验对象host,端口,url路线,http央求参数,post的数据,http header(2)测量检验全局计谋:测验发送的并发量,测量试验循环次数(jmeter未有测量试验时间的设定,唯有不断发送测量试验乞请一再重复多少次loop,大概最棒重复)。对于(1)里每种可配备的参数都得以用变量${varaible_name}来替代,而araiable能够来自CSV格式的外表输入,GUI有“测量试验布置(test plan)右键点击-----加多-----配置元件-----CSV Data Set Config 里能够安装CSV 文件来源和CSV里每列数据对应的变量名称。

上边说的功用还会有此外强大成效设置,在help文档和广大网络资料里都有详尽介绍,举例CSV输入设置(博客),这里不再赘述。

日常的话,首要运用以下设置分界面

新建测验安插(Test Plan)

Test Plan ---- 新建 Thread Group(线程组)

线程组 ---- 配置元件----HTTP Header Manager

线程组-----配置元件---CSV Data Set Config

线程组---sampler(采集样本器) -----HTTP 诉求, 这里面有七个tab,贰个是“parameters“ tab, 配置http央求参数,二个是“post data” tab,可配置post的多少,平常是三个json串,json串里的字段都能够用${xxx}那样的变量来代表。

那多少个分界面配置好就能够,何况jmeter的安顿保存时会生成.jmx文件,这几个不只是用来保存改善配置用,况且还可能有八个更加大的用途,正是在非GUI(命令行,shell)下运作。

因为大家的压测情状往往是linux系统,并且为了最大程度的发布压测工具的本性,无论系统或然压测工具都最佳运营在非GUI情势

linuxshell下,因为jmeter是java开荒的,不供给安装,只要求把jmeter解压后,在解压路线下,运营

{jmeter_install_dir)/}bin/jmeter -n -t $target -l xxxx.jtl

-n 就是静默模;

-t 前面就跟.jmx配置文件的路线;

-l 跟多个输出文件用于记录每趟央求的岁月,能够用jmeter GUI展开生成最终计算聚合报告。

在命令行形式下运维jmeter,仍可以从命令行(shell)输入参数,只要在jmeter命令后的参数列表里增进  -JXXXX = value , XXXX被jmeter识别为三个外界输入变量,其值是value, 在jmerter配置里用${__P(XXXX)}来利用那么些外界输入变量,注意"__P"伊始是连着的四个下划线。

【测量检验创设和作用相比较】

下边大家用一个事实上的例子来拓宽ab和jmeter压力测量试验的效应相比较, 首先是GET诉求。

【ab】

先用十三个冒出压测100秒。

]# ab -t 100 -c 10 ''

This is ApacheBench, Version 2.3 <$Revision: 655654 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd,
Licensed to The Apache Software Foundation,

Benchmarking xxx.xxx.xxx.xxx (be patient)
Finished 733 requests

Server Software:        CppCMS-Embedded/1.0.4
Server Hostname:      xxx.xxx.xxx.xxx
Server Port:            8083

Document Path:        / xxx?uid=79057533&did=123456789&appId=1
Document Length:        4601 bytes

Concurrency Level:      10
Time taken for tests:  100.137 seconds
Complete requests:      733
Failed requests:        732
  (Connect: 0, Receive: 0, Length: 732, Exceptions: 0)
Write errors:          0
Total transferred:      3672653 bytes
HTML transferred:      3572232 bytes
Requests per second:    7.32 [#/sec] (mean)
Time per request:      1366.124 [ms] (mean)
Time per request:      136.612 [ms] (mean, across all concurrent requests)
Transfer rate:          35.82 [Kbytes/sec] received

Connection Times (ms)
              min  mean[+/-sd] median  max
Connect:        1    2  2.4      2      40
Processing:  342 1352 636.3  1183    6046
Waiting:      342 1351 636.2  1183    6046
Total:        345 1354 636.8  1186    6049

Percentage of the requests served within a certain time (ms)
  50%  1185
  66%  1333
  75%  1460
  80%  1564
  90%  1835
  95%  2357
  98%  3248
  99%  5205
 100%  6049 (longest request)

【jmeter】

再用jemeter以雷同的布署(Thread数 为10, ramp时间为1秒,超时阈值为3000ms)

运作结果如下:
Creating summariser <summary>
Created the tree successfully using music_api_uid.jmx
Starting the test @ Thu Nov 19 11:19:43 CST 2015 (1447903183454)
Waiting for possible shutdown message on port 4445
summary +    90 in    16s =    5.7/s Avg:  1677 Min:  959 Max:  3757 Err:    0 (0.00%) Active: 10 Started: 10 Finished: 0
summary +    202 in  31.1s =    6.5/s Avg:  1477 Min:  912 Max:  2727 Err:    0 (0.00%) Active: 10 Started: 10 Finished: 0
summary =    292 in    46s =    6.4/s Avg:  1539 Min:  912 Max:  3757 Err:    0 (0.00%)
summary +    164 in    31s =    5.3/s Avg:  1830 Min:  972 Max:  5009 Err:    5 (3.05%) Active: 10 Started: 10 Finished: 0
summary =    456 in    76s =    6.0/s Avg:  1643 Min:  912 Max:  5009 Err:    5 (1.10

末尾经过GUI展开伏乞详细记录,生成聚合报告的结果为

本文由乐虎游戏发布于计算机资讯,转载请注明出处:GA电子游戏:非GUI格局下Window下推行jmeter质量测验(登陆)

关键词:

java虚拟机总结,java虚拟机

Jvm 内存浅析 及 GC个人学习总计,jvmgc 从出生到现在,20多年过去,Java到现在仍为选取最为不感到奇的言语。那仰赖于...

详细>>

Java高级软件工程师面试考纲,java考纲

【java技术栈】总序,java 技术栈(technologystack)常被用来指代某项工作或某个职位需要掌握的一系列技能的总和。一...

详细>>

基于Linux下网络聊天室的设计与实现 PDF

本系统采用C/S结合的结构,客户端与客户端以及客户端与服务器端之间通过基于TCP/IP协议Socket套接口传送消息。服务...

详细>>

使用ab压力命令测试网站性能

网站性能压力测试是性能调优过程中必不可少的一环。只有让服务器处在高压情况下才能真正体现出各种设置所暴露...

详细>>