1. tomcat -- 可以通过telnet测试
在tomcat的server.xml中,有个配置节
<Connector port="80" protocol="HTTP/1.1"
connectionTimeout="5000"
redirectPort="8443"
URIEncoding="UTF-8"/>
其中的connectionTimeout代表的意思是:在已经建立的http连接上,如果5000毫秒没有信息传输,怎服务器关闭连接。
但如果tomcat服务器内容消耗的时间要排除,例如:
上例中设置的timeout为5s,如果一个请求在服务器中查询数据消耗了10s,然后返回给客户端,那么在此之前的10s中,http连接上没有传输数据,按照上面的规则,在等待5s时http就该关闭。其实不然,要把这10s排除在外,即,在这个10s中http不会关闭,当给客户返回信息后,再等5s,如果没有信息传输,则关闭。
注:以上讨论是在客户端设置了Connection: Keep-Alive的基础上。
2.http客户端Connection: Keep-Alive -- 可以通过telnet测试
http1.1中默认带有此属性,它表示在http链接上,传输完数据不关不链接,下次传输数据时可以继续使用。

本文深入探讨了Tomcat服务器配置中connectionTimeout的作用,以及在客户端设置了Connection:Keep-Alive的情况下,如何确保请求在服务器内部处理期间保持连接状态。同时解释了HTTP客户端如何利用Connection:Keep-Alive特性进行高效数据传输。
2万+

被折叠的 条评论
为什么被折叠?



