Ubuntu中
1)安装 sudo apt-get install apache2-utils
2) 测试 ab -n 10000 -c 1000 url 其中,
-n表示测试请求数目,
-c表示并发数,
url为指定的测试路径,是必须要填写的,否则会报“ab: invalid url ”错误
-t timelimit 测试时间限制,单位秒
-s timeout 每个请求时间限制,单位秒
-v verbosity 日志输出级别,可以选择1, 2等,调试使用
-T content-type POST/PUT接口的content-type
-p postfile POST请求发送的数据文件
测试post请求
1)以x-www-form-urlencoded形式发送
ab -n 1000 -c 100 -p post.txt -T 'application/x-www-form-urlencoded' http://www.test.com/test/api
注: post.txt文件内容: name=hello,world
2)以multipart/form-data形式发送
ab -n 1000 -c 100 -p post.txt -T 'multipart/form-data; boundary=--WebKitFormBoundaryE19zNvXGzXaLvS5C' http://www.test.com/test/api
post.txt文件内容如下:
----WebKitFormBoundaryE19zNvXGzXaLvS5C Content-Disposition: form-data; name="name" hello,world ----WebKitFormBoundaryE19zNvXGzXaLvS5C
总结:性能测试得到的最重要的指标就是QPS(Requests per second),反映了接口的并发承受能力,也就是系统的峰值性能。如果对接口的调用超过了这一限制,就要考虑提升硬件或者做一些优化了
ulimit 的使用
在Linux 中, 网络通信受最大打开文件限制, 如果测试并发性, 一般是1024, 可以通过ulimit -a 查看。
通过 ulimit -n 65535 设置最大文件限制。