Apache Bench:与并发级别直接相关的 SSL 握手失败

C_B*_*C_B 14 ssl benchmark

我对 ab 进行了一些测试,当我使用超过 155 的并发级别时,我得到以下信息:

SSL handshake failed (5).
SSL handshake failed (5).
SSL handshake failed (5).
SSL handshake failed (5).
SSL handshake failed (5).
SSL handshake failed (5).
SSL handshake failed (5).
SSL handshake failed (5).
SSL handshake failed (5).
Completed 100 requests
Completed 200 requests
Finished 200 requests
Run Code Online (Sandbox Code Playgroud)

请求仍然成功:

Concurrency Level:      200
Time taken for tests:   14.481 seconds  
Complete requests:      200
Failed requests:        0
Run Code Online (Sandbox Code Playgroud)

我已经对其进行了多次测试,并且只有在并发数超过 155 时 SSL 握手才会失败。有人可以向我解释它们是如何直接相关的吗?

Fal*_*mot 12

当连接通常失败或中断时,以及由于 SSL 错误,SSL 握手可能会失败。如果由于缺乏可用熵而超时,它也可能失败。

很有可能你只是在用力锤击服务器。这里没有足够的信息来确定究竟是什么失败了。

这个测试中成功的定义是奇怪和可疑的。但是,如果没记错的话,错误代码 5 表示套接字已关闭。也许一旦 SSL 协商开始就判断连接成功,而不是在它成功之后?