我正在从jetty7.6迁移到jetty-9.2。我看到jetty连接的idletimeout的默认值减少了10倍。
在jetty-7.6中
<Set name="maxIdleTime">300000</Set>在jetty-9.2中:
<Set name="idleTimeout"><Property name="http.timeout" default="30000"/></Set>为什么会这样呢?
正因为如此,我不断得到以下异常:
WARN:oejs.HttpChannel:qtp607635164-14195: Commit failed
java.util.concurrent.TimeoutException: Idle timeout expired: 30000/30000 ms
at org.eclipse.jetty.io.IdleTimeout.checkIdleTimeout(IdleTimeout.java:156)
at org.eclipse.jetty.io.IdleTimeout$1.run(IdleTimeout.java:50)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)..........谢谢,Anuj
发布于 2014-08-29 23:53:17
把这个放到你的${jetty.base}/start.ini里
jetty.http.idleTimeout=300000这将恢复您先前的期望。
它从默认的5分钟改为30秒作为超时,原因很简单,因为这对大多数网站来说是更好的选择。
发布于 2017-09-03 07:28:58
使用Jetty 9.4和HTTPS,上述解决方案不起作用。为了解决这个问题,我发现了一个没有文档记录的设置,它不会出现在.ini文件中:
jetty.ssl.idleTimeout=180000
将其添加到Jetty设置中。start.d/<whatever>.ini或start.ini。
发布于 2017-10-20 06:35:10
正确的设置是
## Connector idle timeout in milliseconds
# jetty.ssl.idleTimeout=30000
这可以在ssl.mod文件中找到。
https://stackoverflow.com/questions/25548341
复制相似问题