使用ab进行网站基准测试

时间:2012-09-26 20:25:43

标签: linux performance apache benchmarking

我正在尝试使用我正在处理的网站的各种基准测试工具,并发现Apache Bench(ab)是负载测试的绝佳工具。它是一个命令行工具,显然非常容易使用。但是我怀疑它的两个基本标志。我正在阅读的网站上写道:

Suppose we want to see how fast Yahoo can handle 100 requests, with a maximum of 10 requests running concurrently:

ab -n 100 -c 10 http://www.yahoo.com/

以及对标志的解释说明:

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

我想我无法绕过number of requests to performnumber of multiple requests to make。当我像上面的例子一样把它们放在一起时会发生什么?

有人能给我一个更简单的解释,说明这两个旗帜在一起做什么吗?

2 个答案:

答案 0 :(得分:1)

在您的示例中,ab将创建10个与yahoo.com的连接,并同时使用每个页面请求页面。

如果省略-c 10 ab将只创建一个连接,并且仅在第一个完成时(当我们下载整个主页时)创建下一个连接。

如果我们假装服务器的响应时间不依赖于它同时处理的请求数量,那么您的示例将比没有-c 10的情况快10倍。

另外:What is concurrent request (-c) in Apache Benchmark?

答案 1 :(得分:0)

-n 100 -c 10表示“一次发出100个请求,10个。”