服务器提供网页后,Apache 连接是否立即关闭?
此外,如果您将所有静态资产(JS、CSS、图像等)托管在与您的站点相同的服务器上,这对 Apache 连接有何影响?
Apache 是否在提供页面后立即关闭连接取决于
Connection: Keep-Alive
标头请求它。KeepAlive
和KeepAliveTimeout
参数的设置。见http://httpd.apache.org/docs/2.2/mod/core.html#keepalive所有类型的内容都使用相同的连接“池”。
好问题:因为所有内容都使用相同的 KeepAlive 设置,您可能希望设置不同的服务器来处理不同类型的内容。
--
对于您的下一个问题:
这是客户端可以在一个“保持活动连接”上发出的请求总数。如果你有很多服务器资源,你应该保持高。或者,如果您的服务器资源不足或客户端很多,您可以降低它以将客户端发送出去并让其他人轮流。不要忘记,在客户端发出最后一个请求后,服务器仍将等待“KeepAliveTimeout”秒,然后关闭连接并使该工作人员可用于另一个客户端。
它是子服务器进程死亡之前的客户端请求数(以及每个保持活动连接计数为 1 的单个请求)。不同的 MPM(即专门为实现这些子服务器进程的各个平台开发的 Apache 后端)表现不同:
你的问题的答案是也许。根据您的KeepAlive
设置,连接可能会保持打开状态。如果您KeepAlive
完全关闭,则在满足请求后连接将关闭。如果您有KeepAlive
on (这是更典型的),那么连接将保持一段可配置的时间量,等待来自分配连接的客户端的另一个请求。
请求是针对动态生成的页面还是针对静态内容的,与此行为无关,但是在从服务器下载静态内容时,您最终会重用浏览器建立的连接,如果KeepAlive
是上。这可以提供更好的性能,因为您没有为每个请求重新建立连接的开销。
这是一篇关于考虑使用的好文章的链接KeepAlive
http://abdussamad.com/archives/169-Apache-optimization:-KeepAlive-On-or-Off.html