我正在创建一个拥有许多客户端的服务器解决方案。使用arraylist存储用户信息和套接字。广播消息......
在客户端,
当服务器关闭时,将抛出异常并且我可以捕获异常并执行 相应的行动。
但在服务器端,
当客户端脱机时,服务器不会抛出异常。有没有办法实现。
我现在正在这样做,每隔10秒发送一次看板消息,看看连接是否健康。而不是缩短健康检查委员会messgae之间的间隔。如果有任何方法可以这样做,例如setListener?
答案 0 :(得分:1)
在Java中有很多这种类型的连接解决方案(比如Apache Mina),但是除非客户端发送消息通知服务器它将要断开连接,否则没有其他方法可以告诉除非服务器和客户端之间的心跳失败,听起来就像你实现的那样。您可以看到使用Listener作为故障安全解决方案的问题,因为如果客户端失败,它将永远不会让服务器知道,您将有一个孤立的会话。