[英]Undertow on Spring leaks connections
我正在使用Spring Boot(1.3.O.M5)和Undertow。 最近,我发现当我使用的时候
lsof -p $(pidof java)
命令几个小时后,它向我提供了大约700行,其中大部分是与客户建立的TCP连接,即使最近几乎没有人进入该页面(当我连接到该站点时,我的连接已经消失了5分钟)。
很可能这是我的java.net.SocketException的来源:太多打开的文件 - 我每隔几天就会得到一次(要求我重新启动应用程序),然后才注意到过时的连接。 我增加了系统中的最大打开文件限制,但它显然似乎是一个短期解决方案。
我很感激帮助解决这个问题。 谢谢!
尝试设置httpServerExchange.setPersistent(false);
当我遇到同样的问题时,它会帮助我。 是的 - 它导致太多的打开文件错误,因为它超出了文件描述符的限制
Undertow没有默认的连接超时,您需要使用以下内容进行设置:
Undertow.builder().setServerOption(UndertowOptions.NO_REQUEST_TIMEOUT, 60000)
这将告诉Undertow在60秒后关闭连接而没有来自客户端的请求。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.