apache bench(ab)压力测试模拟POSt请求

ab命令格式:
-N|--count 总请求数,缺省 : 5w
-C|--clients 并发数, 缺省 : 100
-R|--rounds 测试次数, 缺省 : 10 次
-S|-sleeptime 间隔时间, 缺省 : 10 秒
-I|--min 最小并发数, 缺省: 0
-X|--max 最大并发数,缺省: 0
-J|--step 次递增并发数
-R|--runtime 总体运行时间,设置此项时最大请求数为5w
-P|--postfile post数据文件路径
-U|--url 测试地址

 

要使用ab进行post数据测试.从help可以看出我们需要定义两个内容
一个是-p参数.指定需要post的数据
还有一个是-T参数,指定使用的content-type

eg :

ab -n 3 -c 3 -p post.txt -T application/x-www-form-urlencoded http://192.168.1.176:8080/xx

ab -n 1 -c 1 -p post.txt -T application/octet-stream  http://172.25.33.211:8088/dsp/rtb

  

另外,post.txt里面的post数据要放你的json数据,比如

data={"id":"1234"}

但是注意要进行urlencode加密,于是真正放在post.txt里面的内容就是data=%7B%22id%22%3A%221234%22%7D,还有要注意,不要自己在windows上建一个post.txt放数据,而是使用比如eclipse或者notepad++,因为自己建一个txt会在文件开头有一个特殊字符,这样解析不了。我是用的intellij idea开发,用它建的txt文件。搞好之后你再ab以下肯定可以了。。。。

 

-p选项指定post文件的位置;-T选项指定post文件的编码方式,默认是明文,如果指定-T 'application/x-www-form-urlencoded',则表示post文件使用urlencode
 
 
统计QPS的简单办法,通过日志来统计:
tail -f jradx-go-dsp.INFO | grep originalDeviceId | cut -d' ' -f2 | cut -d':' -f3 |cut -d'.' -f1| uniq -c

  

查看内存消耗:
free -ml -s 1

  

 查看go的内存消耗:
http://xiaorui.cc/2016/03/20/golang%E4%BD%BF%E7%94%A8pprof%E7%9B%91%E6%8E%A7%E6%80%A7%E8%83%BD%E5%8F%8Agc%E8%B0%83%E4%BC%98/

  

linux上抓取网络包:
 
tcpdump tcp -i eth1 -t -s 0 -c 100 and dst port ! 22 and src net 192.168.1.0/24 -w ./target.cap

  

 

 

参考:
(1)https://docs.mongodb.com/manual/reference/read-preference/
(2)http://blog.csdn.net/zqg5258423/article/details/53207471
(3)http://jschu.blog.51cto.com/5594807/1728001
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

转载于:https://www.cnblogs.com/mazhimazhi/p/7499453.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值