围攻未知的回应

时间:2011-07-24 11:50:48

标签: nginx webserver benchmarking siege

我正在尝试使用siege实用程序测试我的服务器上的高负载阻力:

siege http://my.server.ru/ -d1 -r10 -c100

Siege输出了很多这样的消息:

HTTP/1.1 200   0.46 secs:   10298 bytes ==> /

但有时会出现如下错误消息:

Error: socket: unable to connect sock.c:220: Connection timed out

或者这个:

warning: socket: -598608128 select timed out: Connection timed out

测试后有围攻报告:

Transactions:                949 hits
Availability:                94.90 %
...
Successful transactions:         949
Failed transactions:              51
Longest transaction:            9.87
Shortest transaction:           0.37

在我的服务器上的nginx日志中,只有950条消息,代码为200,响应可以。

"GET / HTTP/1.1" 200 10311 "-" "JoeDog/1.00 [en] (X11; I; Siege 2.68)"

任何人都可以告诉我这意味着什么

Error: socket: unable to connect sock.c:220: Connection timed out
warning: socket: -598608128 select timed out: Connection timed out

为什么在我的nginx日志中我只看到代码为200的响应?

1 个答案:

答案 0 :(得分:5)

这可能意味着您的管道已满,无法处理更多连接。如果管道已满,则无法使nginx或nginx后端接受更多连接。尝试针对localhost进行测试。然后,您将测试堆栈而不是堆栈和管道。它会更像真正的负载,但让你知道你可以用更大的管道处理什么。