文件名称:syshash:一致的哈希库
文件大小:11KB
文件格式:ZIP
更新时间:2024-05-01 22:05:10
Go
由提出的一致哈希算法启发实现 请参阅以下内容,以获取更 基本思想 每个缓存/机器在[0,1]间隔中映射到一个随机实数。 每个项目都以[0,1]间隔映射到随机实数。 将每个项目存储在其右侧的第一个缓存中。 如果右侧没有机器,则将编号最小的项目存储在高速缓存中。 我们还可以想象在区间[0,1]周围换行,并将每个项目存储在圆的右侧的第一个缓存中。 执行 为了动态维护机器和项目,我们需要维护一个二叉搜索树(BST),其键是分配给机器的值。 令hi和hm分别是我们用来将项和机器哈希到[0,1]区间的函数。 要插入项目,请找到后续项目并将项目添加到计算机。 如果没有成功,则将其环绕到最小值。 要插入机器,请找到成功者并窃取物品。 要删除机器,请找到继承者并推送项目。 去做 [✓]
【文件预览】:
syshash-main
----README.md(2KB)
----LICENSE(11KB)
----go.mod(163B)
----ring_test.go(7KB)
----ring.go(5KB)
----bst.go(4KB)
----go.sum(408B)