频繁创建websocket会导致后端很多僵尸session吗?
后端使用 springboot ,前端页面定时检测 websocket 是否在线,如果不在线则 new WebSocket(url),如果断线很频繁会不会导致后端有很多僵尸 session 进而导致内存泄漏?如果有这种问题要如何解决?
回复
1个回答
test
2024-07-02
后端
@ServerEndpoint("/websocket/{name}")
@OnOpen
public void onOpen(Session session, @PathParam(value = "name") String name)
前端
ws = new WebSocket("ws://127.0.0.1:8080/websocket/" + name);
以name为key,session为value存放至map中,onOpen先根据name getSession如果有,session.close()关闭之前的连接,再放到map中
回复
适合作为回答的
- 经过验证的有效解决办法
- 自己的经验指引,对解决问题有帮助
- 遵循 Markdown 语法排版,代码语义正确
不该作为回答的
- 询问内容细节或回复楼层
- 与题目无关的内容
- “赞”“顶”“同问”“看手册”“解决了没”等毫无意义的内容