想请教一下, nginx 做负载均衡,有多个 spring websocket 服务在跑,想达到的一个效果是,如果某一个 websocket 应用挂了,如何做到不影响当前客户端连接到该 websocket 服务的连接。是否将 websocket 的 session 信息以及客户端的 subscribe 信息保存到一个公共存储如 redis 就可以了?感谢。
1
boyhailong 2016-12-29 17:40:19 +08:00
这样当然是可以的
|
2
meisei81 OP @boyhailong hi~这目前只是我的初步想法,实现上目前被卡住了。我现在的项目环境是 springboot1.3 ,使用了 websocket 模块, ws 使用了 sockjs 以及 stomp 协议。从我目前研究的情况,在服务器往客户端推送消息的时候, spring 读取了内部的 session id ,根据 session id 找到了客户端 subscribe 的 topic ,从而将信息给推送给客户端. 目前自己不知道该如何从这里将 redis 切入。不知您是否能指点一下?感谢。 ps: 不知道我是否有解释清楚。。。
|