我们在我们的J2E应用程序中使用PrimeFaces 4.0(套接字)和氛围2.0.3进行服务器端推送。如何关闭PrimeFaces套接字连接
应用程序问题,它关闭浏览器或从应用程序注销后不关闭套接字。因此,应用程序产生一个处于CLOSE_WAIT状态的套接字,并最终创建太多的打开连接(1024),并且抛出错误。此端口上的大多数连接处于CLOSE_WAIT状态。
JBWEB003008:为地址为/.0.0.0.0和端口XXX的连接器创建的最大线程数(1024)。在JSP
<p:socket id="s" channel="#{xxx.eventChannel}"
onMessage="modelEventHandler.handleModelEvent" widgetVar="xxxSocket" transport="sse" onClose=""/>
代码片段插座我已经尝试通过注销按钮的点击调用Java脚本函数关闭这一点,但它不工作。
function logOut() {
PF(xxxSocket).disconnect();
}
我假设在**真正的代码**你有单引号xxxSocket('xxxSocket')?并且“不起作用”是模糊的 – Kukeltje
@Kukeltje - 是的,单引号在xxxSocket周围,并且它仍然没有关闭套接字。 CLOSE_WAIT连接请求仍然存在。 – DevD
'不关闭'!=进入“CLOSE_WAIT”......你的服务器上的CLOSE_WAIT中它** IS **的事实意味着客户端发送一个信号,表明它不再需要/不需要/使用套接字。 https://www.google.com/search?q=what+is+CLOSE_WAIT – Kukeltje