HTTP协议是基于TCP协议之上的,在进行HTTP连接之前,要先进行TCP连接(TCP三次握手),在连接结束后要对TCP连接进行终止(TCP四次断开)。建立与关闭连接对于HTTP协议而言会消耗很多的内存与CPU资源。
解决办法是HTTP连接保持。对于HTTP/1.1,就是尽量地保持客户端的连接,通过一个连接传送多个HTTP请求响应,对于客户端可以提高50%以上的响应时间,对于服务器可以降低建立与关闭连接时的资源消耗。Apache有相关的连接保持参数,可通过设置响应参数开启与控制保持连接功能。
keepalive ON|OFF:是否打开保持连接功能。根据网站的并发请求量决定是否打开,高并发时打开,并发量不高时可选择关闭。
keepalive timeout:一次连接多次请求之间的最大间隔时间,两次请求超过此时间连接将会断开。
maxkeepaliverequestes:一次连接能够传输的最大请求数量。
[root@localhost ~]# cd /usr/local/httpd/conf/extra/[root@localhost extra]# cp httpd-default.conf{,.bak}[root@localhost extra]# vim httpd-default.conf 16 KeepAlive On 23 MaxKeepAliveRequests 100 29 KeepAliveTimeout 20[root@localhost extra]# vim ../httpd.conf405 Include conf/extra/httpd-default.conf[root@localhost ~]# service httpd stop[root@localhost ~]# service httpd start