在HTTP 1.0中和Apache服务器的一次连接只能发出一次HTTP请求,而KeepAlive参数支持HTTP 1.1版本的一次连接,多次传输功能,这样就可以在一次连接中发出多个HTTP请求。从而避免对于同一个客户端需要打开不同的连接。很多请求通过同一个 TCP连接来发送,可以节约网络和系统资源。
(1)keepAlive启用场景
如果有较多的js,css,图片访问,则需要开启长链接
如果内存较少,大量的动态页面请求,文件访问,则关闭长链接,节省内存,提高apache访问的稳定性
如果内存充足,cpu较好,服务器性能优越,则是否开启长链接对访问性能都不会产生影响
(2)keepAlive配置
在Apache的配置文件httpd.conf中,设置:
1、Timeout 60 默认为60s修改为30s 2、KeepAlive on 设置为on状态 4、KeepAliveTimeout 默认为5s,如果值设置过高,由于每个进程都要保持一定时间对应该用户,而无法应付其他用户请求访问,从而导致服务器性能下降。 5、MaxKeepAliveRequests 2000 如果设置为0表示无限制,建议最好设置一个值 把MaxKeepAliveRequests设置的尽量大,可以在一次连接中进行更多的HTTP请求。但在我们的测试中还发现,把 MaxKeepAliveRequests设置成1000,则评测的客户端容易出现“Send requesttimed out”的错误,所以具体数值还要根据自己的情形来设置。