双重哈希:从开放寻址到 Bloom Filter 工程实践一、问题来源某在线服务维护了一个规模较大的持久化键集合,最初的实现会在进程启动时把全部记录加载到内存索引中。随着历史数据增长,这种方式逐渐暴露出两个问题:大量低频数据长期占用内存;某些内部流程会反...
阅读全文...
Neovim 使用 ELP 内存占用过高的一次排查记录
Neovim 使用 ELP 内存占用过高的一次排查记录最近在 Neovim 中使用 ELP(Erlang Language Platform) 作为 Erlang 的 LSP 服务器时,遇到了一次比较典型的内存占用过高问题。ELP 本身是 Rust 实现...
阅读全文...
阅读全文...
[译注与拓展] 哈希数组映射树(HAMT)的原理与Erlang对其的实现
声明: 本文主要内容编译自 Nick M 的英文技术分享 《Grokking Hash Array Mapped Tries (HAMTs)》。笔者在译介的基础上,修正了原作中关于哈希冲突处理的逻辑细节,并观察了 Erlang 源码分析出 Erlang ...
阅读全文...
阅读全文...