问题描述
简单来说,任何Redis客户端库都采用任何给定的密钥,
CRC16(given key) Mod 16384
,结果是插槽号,它告诉Redis Cluster在分配了该插槽范围的节点上插入/更新/删除该键。
如果任何服务/应用程序已经定义了密钥,那么不幸的是,这些预定义密钥落在任何一个特定插槽或一小部分插槽上,这会导致不均匀/不平衡的密钥分布。>
选项1 -列出所有键,尝试修改键命名约定,以使其平衡甚至用花括号将其括起来以进入任何特定的键槽。如果密钥与应用程序代码紧密结合在一起,或者有时会生成运行时,那么这是不可行的。
选项2 -在Redis群集上使用键槽范围进行播放,但是,可用的碎片数量有限(#个节点)。
我正在寻求帮助,尤其是在Jedis / Redisson Library范围内。
还有其他方法可以在碎片/密钥槽位范围内平衡密钥吗?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)