springboot+websocket+redis 实现websocket集群订阅
在某些业务场景,我们需要页面对于后台的操作进行实时的刷新,这时候就需要使用websocket。通常在后台单机的情况下没有任何的问题,如果后台经过nginx等进行负载的话,则会导致前台不能准备的接收到后台给与的响应。socket属于长连接,其session只会保存在一台服务器上,其他负载及其不会持有这个session,这时需要给保存某个客户端session信息的用户发送消息就发送不到,此时,我们需要
·
在某些业务场景,我们需要页面对于后台的操作进行实时的刷新,这时候就需要使用websocket。
通常在后台单机的情况下没有任何的问题,如果后台经过nginx等进行负载的话,则会导致前台不能准备的接收到后台给与的响应。socket属于长连接,其session只会保存在一台服务器上,其他负载及其不会持有这个session,这时需要给保存某个客户端session信息的用户发送消息就发送不到,并且redis中不能序列化websocketsession对象,所以此时,我们需要使用redis的发布订阅来实现,session的共享。 所有用户向redis订阅,redis通过广播的形式发送每个websocket服务端上的所有session会话通知给相应的客户端。
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐

所有评论(0)