|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的好朋友们!Siege(英辞意思是围攻)是一个压力测试和评测工具,计划用于WEB开辟这评价使用在压力下的接受才能:能够依据设置对一个WEB站点举行多用户的并发会见,纪录每一个用户一切哀求历程的响应工夫,并在必定数目的并发会见下反复举行。
Siege
申明
ab的次要缺点在于它不克不及让你摹拟一个加倍实在的哀求散布——比方你想经由过程设置一个哀求的列表来在这些列表之间往返测试,而siege就能够。
装置
siege必要本人从http://www.joedog.org/上本人下载,然后编译:
./configure--prefix=/usr/local/siege--mandir=/usr/local/man
make
#转到超等用户注重在configure的时分,必定要设置mandir参数,不然当你经由过程mansiege检察siege匡助的时分会看不到他的manual.
装置完成后,运转bin中的siege_config下令来创立.siege文件以后,你能够经由过程下令来检察以后设置
最复杂的利用下令:
./siegehttp://localhost/参数先容
设置并发的用户(毗连)数目.默许的毗连数目能够到~/.siegerc中检察,指令为concurrent=x。好比-c10,设置并发10个毗连
(repetitions),反复数目,即每一个毗连收回的哀求数目,设置这个的话,就不必要设置-t了。对应.siegerc设置文件中的reps=x指令
(time),延续工夫,即测试延续工夫,在NUM工夫后停止,单元默许为分,好比-t10,那末测试工夫为10分钟,-t10s,则测试工夫为10秒钟。对应.siegerc中的指令为time=x指令
(benchmark),基准测试,假如设置这个参数的话,那末delay工夫为0。mansiege中有一句话如许说:
itsnotrecommandedthatyouusethisoptionwhileloadtesting.
申明基准测试和loadtesting是完整分歧的,至于有甚么分歧,能够浏览BenchMarkingVSLoadTestingVSPerformance.
(file),这是文件。对应.siegerc设置文件中的file=x指令
- 其他对照存眷的测试***,好比我想利用Keep-Alive体例举行测试,能够在.siegerc设置文件中举行修正,将connect=close改成connect=keep-alive
- 别的您还能够经由过程-HHEADER参数来设置哀求header。
了局剖析
待续...
最早利用的压力测试工具是apache的ab(apachebenchmark),apacheab做反复压力测试不错,可是每次只能测试一个链接,怎样测试一组链接(好比从日记中导出的1个小时的日记,做实在压力测试),厥后找到了这个:
Siege是一个压力测试和评测工具,计划用于WEB开辟这评价使用在压力下的接受才能:能够依据设置对一个WEB站点举行多用户的并发会见,纪录每一个用户一切哀求历程的响应工夫,并在必定数目的并发会见下反复举行。
SIEGEisanhttpregressivetestingandbenchmarkingutility.Itwasdesignedtoletwebdevelopersmeasuretheperformanceoftheircodeunderduress,toseehowitwillstanduptoloadontheinternet.Itletstheuserhitawebserverwithaconfigurablenumberofconcurrentsimulatedusers.Thoseusersplacethewebserver"undersiege."Thedurationofthesiegeismeasuredintransactions,thesumofsimulatedusersandthenumberoftimeseachsimulateduserrepeatstheprocessofhittingtheserver.Thus20concurrentusers50timesis1000transactions,thelengthofthetest.
下载/装置
Siege时一个开放源代码项目:http://www.joedog.org/siege/
下载:
wgetftp://sid.joedog.org/pub/siege/siege-latest.tar.gz
装置:
%./configure;make
#makeinstall
siege包括了一组压力测试工具:
SIEGE(1)Siege是一个HTTP压力测试和评测工具.
利用样例:
义务列表:www.chedong.com.url文件
http://www.chedong.com/tech/
http://www.chedong.com/tech/acdsee.html
http://www.chedong.com/tech/ant.html
http://www.chedong.com/tech/apache_install.html
http://www.chedong.com/tech/awstats.html
http://www.chedong.com/tech/cache.html
http://www.chedong.com/tech/click.html
http://www.chedong.com/tech/cms.html
http://www.chedong.com/tech/compress.html
http://www.chedong.com/tech/cvs_card.html
http://www.chedong.com/tech/default.html
http://www.chedong.com/tech/dev.html
http://www.chedong.com/tech/gnu.html
....
siege-c20-r2-fwww.chedong.com.url
参数申明:
-c20并发20个用户
-r2反复轮回2次
-fwww.chedong.com.url义务列表:URL列表
输入样例:
**Siege2.59
**Preparing20concurrentusersforbattle.此次“战役”筹办了20个并发用户
Theserverisnowundersiege..done.办事在“围攻”测试中:
Transactions:40hits完成40次处置
Availability:100.00%乐成率
Elapsedtime:7.67secs统共用时
Datatransferred:877340bytes共数据传输:877340字节
Responsetime:1.65secs响应用时1.65秒:显现收集毗连的速率
Transactionrate:5.22trans/sec均匀每秒完成5.22次处置:暗示办事器背景处置的速率
Throughput:114385.92bytes/sec均匀每秒传送数据:114385.92字节
Concurrency:8.59最高并发数8.59
Successfultransactions:40乐成处置次数
Failedtransactions:0失利处置次数
注重:因为速率很快,大概会达不到并发速率很高就已完成。Responsetime显现的是测试呆板和被测试办事器之间收集链接情况。Transactionrate则暗示办事器端义务处置的完成速率。
帮助工具:
增量压力测试:
为了便利增量压力测试,siege还包括了一些帮助工具:
bombardment(1)
是一个帮助工具:用于依照增量用户压力测试:
利用样例:
bombardmenturlfile.txt5341
初始化URL列表:urlfile.txt
初始化为:5个用户
每次增添:3个用户
运转:4次
每一个客户端之间的提早为:1秒
输入成CSV格局:
siege2csv.pl(1)
siege2csv.pl将bombardment的输入酿成CSV格局:
TimeDataTransferredResponseTimeTransactionRateThroughputConcurrencyCode200(notethatthisishorriblybroken.)
24260.226030640.024.0210014.350.08
60559.9815076600.0110.0925136.050.12
93859.9823374960.0215.6438971.260.26
11576028832440.0419.2848054.070.78
参考:
开源测试工具:http://www.opensourcetesting.org/performance.php
[technoratirelativetag]
[相干内容]
由tristones宣布于2004年02月18日下战书02r53分
留言
SIEGE测试于方针网站的网页静态静态没有干系,只需义务列表是静态网页便可。即便是必要认证的,也能够经由过程事后设置POSTHEADER等体例摹拟登录。
done.
Transactions:455hits
Availability:75.83%
Elapsedtime:85.45secs
Datatransferred:4097.30MB
Responsetime:11.32secs
Transactionrate:5.32trans/sec
Throughput:47.95MB/sec
Concurrency:60.30
Successfultransactions:455
Failedtransactions:145
Longesttransaction:53.61
Shortesttransaction:0.80
FILE:/usr/local/siege/var/siege.log
Youcandisablethisannoyingmessagebyediting
the.siegercfileinyourhomedirectory;change
thedirectiveshow-logfiletofalse.
[root@localhostbin]#./siege-c300-r2-f/work/siege/siege.txt;
cat/usr/local/siege/var/siege.log
Date&Time,Trans,ElapTime,DataTrans,RespTime,TransRate,Throughput,Concurrent,OKAY,Failed
2009-06-0213:33:21,455,85.45,4097,11.32,5.32,47.95,60.30,455,145
done.
Transactions:192hits
Availability:96.00%
Elapsedtime:78.64secs
Datatransferred:0.09MB
Responsetime:5.13secs
Transactionrate:2.44trans/sec
Throughput:0.00MB/sec
Concurrency:12.53
Successfultransactions:192
Failedtransactions:8
Longesttransaction:51.85
Shortesttransaction:1.14
FILE:/usr/local/siege/var/siege.log
Youcandisablethisannoyingmessagebyediting
the.siegercfileinyourhomedirectory;change
thedirectiveshow-logfiletofalse.
[root@localhostbin]#./siege-c100-r2-f/work/siege/url.txt;
http://211.139.163.252/lsp/leService.doPOST</work/siege/data.txt
<?xmlversion="1.0"encoding="GBK"?><!DOCTYPEsvc_initSYSTEM"MLP_SVC_INIT_320.DTD"><svc_initver="3.2.0"><hdrver="3.2.0"><client><id>1001</id><pwd>1001</pwd></client></hdr><slirver="2.0.0"res_type="SYNC"><msids><msid>8613501502020</msid><msid>8613602887904</msid></msids><loc_typetype="CURRENT_OR_LAST"/><priotype="NORMAL"/><req_resulttype="AREA_CODE"/></slir></svc_init>
如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的好朋友们! |
|