所以HTTP.1版本及以上支持持久连接。
现在,我们正在创建一个应该是无状态的剩余应用程序。我们对一次连接数量进行了限制。
但是如果我查看 HTTP 1.0 文档,这种方法似乎有问题。
它表示服务器将保持连接打开,除非客户端要求关闭。
所以,我的问题是如果客户端不关闭怎么办?如果连接始终处于 Activity 状态,它可能会给我拒绝服务错误。
jetty 的默认超时是多少以及如何配置它?我找不到合适的文档。
最佳答案
HttpConfiguration
有一个配置设置 setIdleTimeout(long ms)
控制请求之间的空闲超时。
HttpConfiguration
对象是 ServerConnector
的一部分,用于控制监听端口并接受连接。
代码中空闲超时默认值为-1(无限)。
但在 jetty-home
(以及较旧的 jetty-distribution
)中,它需要 30,000 毫秒。
如果使用独立的jetty,请使用jetty-start属性jetty.http.idleTimeout
为您的特定jetty基础实例/配置进行配置。
注意:如果您使用 Servlet 异步功能,则容器中配置的空闲超时将被 Servlet 异步超时配置覆盖。 (如果您使用 Servlet Async,则始终指定有效的超时,切勿禁用它,或将其设置为无限,或将其设置为巨大的值)
关于java - jetty 服务器 : keep alive timeout for HTTP connection,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59374567/