更新 我改用 1024 位密钥,并更改了 ssl.conf 文件中的 SSLCipherSuite。SSLCipherSuite RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP
嘿,
我已将 apache 设置为使用带有自签名证书的 SSL。
使用 https(KeepAlive 开启)时,我每秒可以收到超过 3000 个请求。但是,使用 https(KeepAlive 关闭)时,我每秒只能收到 13 个请求。
我知道这应该会有点开销,但这似乎不正常。有人能建议我如何调试这个问题吗?
以下是 https 的 ab 日志:
Server Software: Apache/2.2.3
Server Hostname: 127.0.0.1
Server Port: 443
SSL/TLS Protocol: TLSv1/SSLv3,DHE-RSA-AES256-SHA,4096,256
Document Path: /hello.html
Document Length: 29 bytes
Concurrency Level: 5
Time taken for tests: 30.49425 seconds
Complete requests: 411
Failed requests: 0
Write errors: 0
Total transferred: 119601 bytes
HTML transferred: 11919 bytes
Requests per second: 13.68 [#/sec] (mean)
Time per request: 365.565 [ms] (mean)
Time per request: 73.113 [ms] (mean, across all concurrent requests)
Transfer rate: 3.86 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 190 347 74.3 333 716
Processing: 0 14 24.0 1 166
Waiting: 0 11 21.6 0 165
Total: 191 361 80.8 345 716
Percentage of the requests served within a certain time (ms)
50% 345
66% 377
75% 408
80% 421
90% 468
95% 521
98% 578
99% 596
100% 716 (longest request)
答案1
我怀疑 SSL 握手所需的 RSA 计算正在使用这段时间。您选择了一个非常大的 RSA 密钥(4096 位)。您可能还想验证您的客户端是否正确使用 SSL 恢复会话。
答案2
检查 SSLRandomSeed。您不应该使用 /dev/random(除非您的操作系统不会因熵不足而阻止)。
另外,请检查您是否正在使用会话缓存。如果没有,请启用一个(检查 SSLSessionCache)。