当前位置:  开发笔记 > 编程语言 > 正文

Predis分片(一致散列)

如何解决《Predis分片(一致散列)》经验,为你挑选了1个好方法。

Predis声称拥有客户端分片(支持一致的散列哈希).http://github.com/nrk/predis

我可以使用连接到一个配置文件(节点)数组进行分片,但它不是一致的散列.当我向池中添加另一个节点时,无法找到某些键.有人有这方面的经验吗?

使用php 5.2(和redis的php 5.2版本).



1> bramp..:

官方Redis网站称"Redis通过一致性散列支持客户端分片.目前不支持容错,也不支持在运行时添加或删除集群."

据我所知,目前这种共享不是容错的,存储在故障节点上的所有密钥都将丢失.同样,如果添加新节点,密钥空间的某些部分现在将丢失(因为密钥将存储在错误的节点上).通常在一致的哈希系统中,当新节点加入时,它会复制现在从其邻居映射到它的所有键.Redis服务器不支持执行此操作.

因此,如果您使用Redis作为缓存,一致的哈希工作正常,其中实际数据存储在Redis后面,但目前不要指望您的数据不会丢失.

更新:可以通过名为ketama的一致哈希库实现真正的分片.

推荐阅读
小色米虫_524
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有