Spring WebSocketSession 可以缓存吗?以磁盘 IO 来换内存空间

2024-03-31 02:00:37 +08:00
 nnegier
1741 次点击
所在节点    程序员
8 条回复
codingadog
2024-03-31 10:32:41 +08:00
就我所知 websocket session 等长连接是无法序列化的,所以无法被缓存
drymonfidelia
2024-03-31 13:44:45 +08:00
如果只是想 以磁盘 IO 来换内存空间 调大 swap 就可以
nnegier
2024-03-31 13:57:58 +08:00
@drymonfidelia 用的阿里云的 ECS ,貌似是虚拟机,这样还可行吗?
nnegier
2024-03-31 14:21:58 +08:00
@drymonfidelia 阿里云”如果您使用普通云盘,不建议使用 swap 分区。如果使用高效云盘、SSD 云盘或 ESSD 云盘,可以根据实际情况使用 swap 分区。“ 谢谢你的回答,看样子是可以的
dyv9
2024-04-01 06:41:49 +08:00
为啥要缓存?想办法把 session 转换成 session id 缓存 session id 就行了。消息事件发生时我们用计算出来的 session 查询缓存状态,比如对应的用户 ID 或 token ,不是直接以 session 对象为 key 查找。
dyv9
2024-04-01 06:42:21 +08:00
@dyv9 纠正:计算出来的 session id
Karte
2024-04-01 09:23:53 +08:00
用 netty websocket 试试. 多路复用技术可以减少句柄占用.
chtcrack
2024-04-01 11:55:35 +08:00
啊?别人都是拿内存空间来加快读写速度,你是反其道而行之啊。。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1028481

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX