我对Apache服务器有问题。最初的SSL握手大约需要5-7秒,这是可怕的。在此之后,响应时间以毫秒为单位--但是消息必须在第一个消息之后立即发送,否则握手将在几秒钟不活动后再次进行。有什么方法可以加快Apache配置的速度吗?
发布于 2011-06-15 11:26:47
这是一些Linux发行版,对吧?
这台服务器主要是空闲的吗?也许Apache正在从/dev/随机中挖掘随机性。这有时非常慢,因为/dev/随机需要“真正的”随机性;比如移动鼠标、使用键盘和网络流量收集熵。如果内核熵池几乎为空,则需要随机性的进程往往会停顿一段时间(长)。
如果是这种情况,在SSL握手期间,cat /proc/sys/kernel/random/entropy_avail
应该接近于零。
您可以使用SSLRandomSeed
Apache指令将随机源切换到/dev/urandom,但请注意,理论上这并不像/dev/随机那样安全。
其他解决方案是使用像rngd
这样的守护进程(可以从许多Linux中的rng-tools
包中获得),它可以填充熵池。
发布于 2011-06-15 11:44:50
除了Janne Pikkarainen说的,还检查服务器是否对SSL请求执行DNS反向查找。运行一个tcpdump -pi eth0 port 53
。
https://serverfault.com/questions/280623
复制相似问题