二维map向量可能会导致内存持续增长。
← 返回列表

当前位置: 作者:kanshan · 2026-04-12 09:13:33

#1 kanshan · 2026-04-12 09:13:33
stalltrix
以前我提过这个问题:https://meta.stalltrix.com/t/topic/a931e3130bd9b4e50d4058d16073c3c9fd3606a80140d38de476c7ed40813fb2

确实解决了postdb的问题,




但是还有一个值,存储了帖子的具体指针位置:https://github.com/stalltrix/kepweb/blob/8975c4ea57d77c2685c4d49db9c756108ce87d74/webserver.go#L90

这个叫做“二维指针“的 sync.Map似乎也是只会不断增长,同时没有清理。并且存储的是所有的帖子+回复的位置,而不只是topic。

这种后期可以预料到内存会无限增长,帖子越多,内存使用越多。
#2 duso · 2026-04-12 11:24:14
stalltrix
会吗?我vps上的这个程序跑了几个星期了,看探针,内存很平稳啊
#3 kanshan · 2026-04-12 12:02:42
stalltrix
内存是随着帖子变多而变多的泄露,而不是随着时间变多而变多的泄露
#4 skymmap · 2026-04-12 14:01:23
stalltrix
确实有这个问题,但是二维指针指向了帖子位置,帖子修改/删除都要使用这个。否则接收到一个帖子,系统不知道存在那里的。
#5 skymmap · 2026-04-12 20:13:52
stalltrix
看看这个,Commit a9ed7cf

v0.2.0应该解决了。

还是老方法,使用三级数据结果解决了,常用数据在内存,不常用在redis,冷数据在硬盘。

可以设置json来开启redis缓存
```json
"vec_addr": "",
"vec_pass": "",
```

这个redis地址如果"db_addr","db_pass:"一致,将自动使用不同的表。

建议填写为不一致,以使用两个redis。




如果没有设置redis,将直接采用内存 -> 硬盘冷数据无缓冲。没有内置KV

注册

或使用第三方注册

登录

没有账号? 立即注册
技术
闲聊
开发
正在提交...