Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Performance apache bench中连接、处理和等待的定义_Performance_Apache_Benchmarking - Fatal编程技术网

Performance apache bench中连接、处理和等待的定义

Performance apache bench中连接、处理和等待的定义,performance,apache,benchmarking,Performance,Apache,Benchmarking,当我运行apache bench时,会得到如下结果: Command: abs.exe -v 3 -n 10 -c 1 https://mysite Connection Times (ms) min mean[+/-sd] median max Connect: 203 213 8.1 219 219 Processing: 78 177 88.1 172 359 Waiting: 78 16

当我运行apache bench时,会得到如下结果:

Command: abs.exe -v 3 -n 10 -c 1 https://mysite
Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:      203  213   8.1    219     219
Processing:    78  177  88.1    172     359
Waiting:       78  169  84.6    156     344
Total:        281  389  86.7    391     564
我似乎找不到连接、处理和等待的定义。这些数字是什么意思?

来自:

连接和等待时间

建立连接并获取响应的第一位所需的时间量

处理时间

服务器响应时间,即服务器处理请求和发送回复所用的时间

总时间

连接和处理时间的总和

我把这等同于:

  • 连接时间:套接字打开所用的时间
  • 处理时间:第一字节+传输
  • 等待:到第一个字节的时间
  • 总计:连接+处理的总和

连接:连接到远程主机所需的时间

处理:总时间减去连接到远程主机所需的时间

等待:响应接收的第一个字节减去发送的最后一个字节


总计:从连接之前到连接关闭之后

通过查看源代码,我们发现以下计时点:

apr_time_t start,           /* Start of connection */
           connect,         /* Connected, start writing */
           endwrite,        /* Request written */
           beginread,       /* First byte of input */
           done;            /* Connection closed */
当请求完成时,一些计时存储为:

        s->starttime = c->start;
        s->ctime     = ap_max(0, c->connect - c->start);
        s->time      = ap_max(0, c->done - c->start);
        s->waittime  = ap_max(0, c->beginread - c->endwrite);
“处理时间”随后计算为

s->time - s->ctime;
因此,如果我们将其转化为时间线:

t1: Start of connection
t2: Connected, start writing
t3: Request written
t4: First byte of input
t5: Connection closed
那么定义将是:

Connect:      t1-t2   Most typically the network latency
Processing:   t2-t5   Time to receive full response after connection was opened
Waiting:      t3-t4   Time-to-first-byte after the request was sent
Total time:   t1-t5

我认为处理时间包括等待时间,否则总时间将是连接+等待+处理。最好的答案在这里。非常感谢。apache bench源代码托管在哪里?我甚至在apache的开源列表中也找不到它。太好了!非常感谢。让我称你为伟大的逆转者!