[Apache][测试] 使用Apache Bench进行负载测试
如果要进行Web服务器的负载测试,首先使用 ab(Apache Bench的缩写)。
1. 安装
对于Mac来说
在Mac上,它已经预装好了。
在OS X Lion上,存在一个错误导致无法运行,请查看这篇文章。
如果是Windows系统的话
步骤1:安装xampp。
步骤2:进入xampp安装文件夹:cd C:\xampp\apache\bin\。
步骤3:执行ab命令。
2. ab指令的语法
$ ab [-OPTION] URL
可以通过man命令来确认。
3. 进行负载测试的方法
一个简单的执行方式
ab -n [総リクエスト数] -c [同時リクエスト数] [URL]
如果同时进行10个连接,并发出100个请求,将会发生这种情况。
ab -n 100 -c 10 http://example/test.php
查看执行结果的方法
在执行结果报告中,首先应该查阅以下两点信息。
-
- Failed Requests:失敗したリクエスト数。これが発生している場合は、サーバが処理できる能力を超えている。
- Requests per second:1秒あたりに処理したリクエスト数。
要测量服务器的极限,需要对其进行调优,以使“失败的请求”为0,并且“每秒请求”值更大。
希望有一个能自动进行调整的选项。
- CSVファイルとして出力
当使用’e’选项(表示导出的缩写),可以将文件输出为CSV格式。
ab -n 100 -c -e result.csv 10 http://example/test.php
能做和不能做的事情
-
- 1回の実行で単一のURLに対してリクエスト
- シナリオベース(複数の一連の)のテストはできない
如果你想对多个URL进行负载测试,可以使用以下工具。
-
- Apache JMeter
-
- httperf
- weighttp
请你写出下列中文解释,只需一种选择:
参考:
https://blog.verygoodtown.com/2012/05/apache-bench-ab/
非常好的城市博客上的文章介绍了Apache Bench(AB)的使用方法。
https://qiita.com/mmmm/items/f31b15b4f80427360207
这篇文章从神奈川井之头提供了关于使用Apache Bench(AB)的说明。
https://dev.classmethod.jp/tool/ab-tutorial/
这篇文章提供了有关如何使用Apache Bench(AB)的教程。