不知道大家使用Mina的时候有没有碰到过这样的问题。
客户端和服务器在不同的网段,中间有防火墙。当客户端通过长连接方式与服务器交互时,在连接没有断开的情况下,开始交互时正常的,但是一段时间不交互,客户端再次发送消息给服务端,服务端会收不到消息。这里很奇怪的是,连接并没有断开,而且客户端的消息确实是发出去了。
大家是不是有比较好的方法解决这个问题呢?
客户端发送程序方法如下:
public void sendRequest(String request,HandlerResponse frame)throws Exception {
if (session == null) {
throw new Exception("没有连接,请重新登录连接服务器");
} else {
WriteFuture writeResult= session.write(request);
writeResult.addListener(this);
} }
客户端和服务器在不同的网段,中间有防火墙。当客户端通过长连接方式与服务器交互时,在连接没有断开的情况下,开始交互时正常的,但是一段时间不交互,客户端再次发送消息给服务端,服务端会收不到消息。这里很奇怪的是,连接并没有断开,而且客户端的消息确实是发出去了。
大家是不是有比较好的方法解决这个问题呢?
客户端发送程序方法如下:
public void sendRequest(String request,HandlerResponse frame)throws Exception {
if (session == null) {
throw new Exception("没有连接,请重新登录连接服务器");
} else {
WriteFuture writeResult= session.write(request);
writeResult.addListener(this);
} }
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货