abc压力测试杂项

ab是apache下很不错的压力测试工具。一般情况下也只关心Requests per second这一指标,相当于LR中的每秒事务数.

ab这个命令有很多参数,通常使用简单的命令就是 #ab -c 100  -n 200 http://www.abc.com/  代表模拟200个请求100个并发(100人同时操作)访问http://www.abc.com/,

下面是ab的使用帮助

Usage: ab [options] [http[s]://]hostname[:port]/path
Options are:
    -n requests     Number of requests to perform
    -c concurrency  Number of multiple requests to make
    -t timelimit    Seconds to max. wait for responses
    -b windowsize   Size of TCP send/receive buffer, in bytes
    -p postfile     File containing data to POST. Remember also to set -T
    -u putfile      File containing data to PUT. Remember also to set -T
    -T content-type Content-type header for POSTing, eg.
                    'application/x-www-form-urlencoded'
                    Default is 'text/plain'
    -v verbosity    How much troubleshooting info to print
    -w              Print out results in HTML tables
    -i              Use HEAD instead of GET
    -x attributes   String to insert as table attributes
    -y attributes   String to insert as tr attributes
    -z attributes   String to insert as td or th attributes
    -C attribute    Add cookie, eg. 'Apache=1234. (repeatable)
    -H attribute    Add Arbitrary header line, eg. 'Accept-Encoding: gzip'
                    Inserted after all normal header lines. (repeatable)
    -A attribute    Add Basic WWW Authentication, the attributes
                    are a colon separated username and password.
    -P attribute    Add Basic Proxy Authentication, the attributes
                    are a colon separated username and password.
    -X proxy:port   Proxyserver and port number to use
    -V              Print version number and exit
    -k              Use HTTP KeepAlive feature
    -d              Do not show percentiles served table.
    -S              Do not show confidence estimators and warnings.
    -g filename     Output collected data to gnuplot format file.
    -e filename     Output CSV file with percentages served
    -r              Don't exit on socket receive errors.
    -h              Display usage information (this message)
    -Z ciphersuite  Specify SSL/TLS cipher suite (See openssl ciphers)
    -f protocol     Specify SSL/TLS protocol (SSL2, SSL3, TLS1, or ALL)

有些特定情况下的ab是需要服务器登录认证。这样就涉及一些参数的使用。

登录认证有几种机制,我涉及的项目里有Cookie、Authorization。需要说明的一个参数 -H 这个里面可以放入token信息 -H "Authorization: token i'm token“

也可以传cookie信息 -H "Cookie: PHPSESSID=nfrro6vgq2uvu8ir2kkt4g4tv7;“ 如何获取cookie?可安装插件 Live HTTP headers


另外针对url带参数可以使用-p postfile File containing data to POST, 可将参数放入文件中,格式如param1=param1&param2=param2. 使用这个参数需要配合 -T "-T"这个默认是 'text/plain' 也可传递json格式 -T "application/json"

如 #ab -n 200 -c 100 -p ./params.txt  -T  "application/x-www-form-urlencoded"  http://www.abc.com/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值