真好用啊 阿里ESA
java-websocket 中 Websocket Server 关闭后端口不会及时释放的解决方法
使用java-websocket包创建WebSocket服务器时,若建立过连接后关闭服务器,立即重启会提示端口被占用,但实际并无进程占用该端口。这是因为TCP协议在连接关闭后会将端口置于TIME_WAIT状态,持续30-120秒,期间端口无法重用。解决方案是在创建WebSocketServer时设置SO_REUSEADDR套接字选项,即添加this.setReuseAddr(true)。该选项允许端口在TIME_WAIT状态下重用,不会影响TCP协议的可靠性,因为新旧连接通过四元组和随机序列号区分,内核仍会正确处理原有连接的关闭流程。