我打开了与Apache服务器的套接字连接,但是我没有发送任何等待特定时间的请求。我能指望Apache将这个空闲套接字连接保持多久?
情况是Apache服务器资源有限,需要在它们全部消失之前提前分配连接。
发送请求后,服务器通告其超时策略:
KeepAlive:超时= 15,最大= 50
如果后续请求的发送时间超过15秒,则会出现“服务器已关闭连接”错误。所以它确实执行了该政策。
然而,似乎如果在连接打开后没有发送请求,Apache即使长达10分钟也不会关闭它。
在这种情况下,有人能否了解Apache的行为。
答案 0 :(得分:4)
根据Apache Core Features, TimeOut Directive,默认超时为300秒,但它是可配置的。
对于保持连接的连接(在第一次请求之后),默认超时为5秒(参见Apache Core Features, KeepAliveTimeout Directive)。 In Apache 2.0 the default value was 15 seconds。它也是可配置的。
此外,还有mod_reqtimeout
Apache Module提供了一些微调设置。
我认为任何提到的值都不能通过http标头或任何其他形式提供给http客户端。 (除了cource的keep-alive值。)