集群服务器中的spring websocket,如何在部署一台服务器时保存WebSocketSession

时间:2017-03-13 08:14:45

标签: java spring websocket spring-websocket

这是spring-websocket的实现:

@Component
public class SystemWebSocketHandler implements WebSocketHandler {

    @Override
    public void afterConnectionEstablished(WebSocketSession session) throws Exception {
        System.out.println("connect to the websocket success......");
        session.sendMessage(new TextMessage("Server:connected OK!"));
    }
    // omit other method
}

我发现WebSocketSession不是 Serializable 界面。我无法将其保存到共享存储库(如redis ......) 我有一个tomcat集群,WebSocketSession可能在其中一个集群中。如果代码发生变化,我需要部署(重新启动一些服务器并让其他服务器保持活动状态)。

是否是通过WebSocketSession对象与前端通信的唯一方式?
如果是这样,如果我重新启动服务器,客户端会丢失连接怎么办?

0 个答案:

没有答案