客户端断网或者关机,服务器端session没关闭的解决方案:
只需要在服务器的XmppIoHandler这个类的sessionCreated()方法增加如下两句即可。
修改后的sessionCreated()方法如下:
public void sessionCreated(IoSession session) throws Exception { IoSessionConfig config = session.getConfig(); config.setIdleTime(IdleStatus.BOTH_IDLE, 180);//表示180秒后如果没有收到心跳包就主动关闭连接 log.debug("sessionCreated()..."); }