基本概念:
• 吞吐率(Requests per second)
概念:服务器并发处理能力的量化描述,单位是reqs/s,指的是某个并发用户数下单位时间内处理的请求数。某个并发用户数下单位时间内能处理的最大请求数,称之为最大吞吐率。
计算公式:总请求数 / 处理完成这些请求数所花费的时间,即
Request per second = Complete requests / Time taken for tests
• 用户平均请求等待时间(Time per request)
计算公式:处理完成所有请求数所花费的时间/ (总请求数 / 并发用户数),即
Time per request = Time taken for tests /( Complete requests / Concurrency Level)
• 服务器平均请求等待时间(Time per request: across all concurrent requests)
计算公式:处理完成所有请求数所花费的时间 / 总请求数,即
Time taken for / testsComplete requests
可以看到,它是吞吐率的倒数。
同时,它也=用户平均请求等待时间/并发用户数,即Time per request / Concurrency Level
ab命令选项 可以使用 ab -–help查看全部的命令参数
ab命令最基本的参数是-n和-c:
-n 执行的请求数量
-c 并发请求个数
ab –n 100 –c 10 http://39.1.15.233/home/ 测试的自己的网站(100请求,10并发)


网络上消耗的时间的分解:
Connection Times (ms)
Connect: 2 43 197.3 2 1008
Processing: 11 1174 1506.4 858 13033
Waiting: 10 551 1381.4 220 13026
Total: 12 1218 1489.6 1017 13039
每个请求处理时间的分布情况:
50%的处理时间在1017ms内,66%的处理时间在1441ms内…,重要的是看90%的处理时间。
Percentage of the requests served within a certain time (ms)
50% 1017
66% 1441
75% 1655
80% 1862
90% 2476
95% 3167
98% 3562
99% 13039
100% 13039 (longest request)
在实际测试的时候可以酌情增加连接数和用户数,以得到最接近准确的并发数值。
- Webbench
Webbench是知名的网站压力测试工具,能测试处在相同硬件上,不同服务的性能以及不同硬件上同一个服务的运行状况。
wget http://www.ha97.com/code/webbench-1.5.tar.gztar -zvxf webbench-1.5.tar.gz





webbench -c 50 -t 10 http://39.1..233/home/

模拟五十个用户访问自己的网站10秒,请求的URL 后端如果报错,就加一个“/”。
wget http://www.acme.com/software/http_load/http_load-12mar2006.tar.gztar -zvxf http_load-12mar2006.tar.gz



使用示例
https://blog.51cto.com/u_/http_load -rate 5 -seconds 10 urls
-parallel 简写-p :含义是并发的用户进程数。
-fetches 简写-f :含义是总计的访问次数
-rate 简写-p :含义是每秒的访问频率
-seconds简写-s :含义是总计的访问时间
执行结果:
说明执行了一个持续时间10秒的测试,每秒的频率为5。
49 fetches, 2 max parallel, bytes, in 10.0148 seconds
5916 mean bytes/connection
4.89274 fetches/sec, 28945.5 bytes/sec
msecs/connect: 28.8932 mean, 44.243 max, 24.488 min
msecs/first-response: 63.5362 mean, 81.624 max, 57.803 min
HTTP response codes:
code 200 – 49
结果分析:
1.49 fetches, 2 max parallel, bytes, in 10.0148 seconds
说明在上面的测试中运行了49个请求,最大的并发进程数是2,总计传输的数据是bytes,运行的时间是10.0148秒
5.msecs/first-response: 63.5362 mean, 81.624 max, 57.803 min
6、HTTP response codes: code 200 – 49
说明打开响应页面的类型,如果403的类型过多,那可能要注意是否系统遇到了瓶颈。
特殊说明:这里,我们一般会关注到的指标是fetches/sec、msecs/connect
他们分别对应的常用性能指标参数
Qpt-每秒响应用户数和response time,每连接响应用户时间。
测试的结果主要也是看这两个值。当然仅有这两个指标并不能完成对性能的分析,我们还需要对服务器的cpu、men进行分析,才能得出结论
以上介绍了三种开源免费的压测工具,使用都比较简单,类似的工具还有很多,如siege等,不再一一累述。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/147478.html