redis cross slot error

原文:Redis Cross Slot error


翻译:

我尝试在redis中一次插入多条key/values(一些values是 set,一些是 hashs),我得到了这个错误:ERR CROSSSLOT Keys in request don't hash to the same slot。

我没有在 redis-cli中做这些而是在 go语言中,它需要写多个 key/values到一个 redis集群中。我看代码的其它多条key/values的地方是工作很好的,我不理解为什么我的不能工作,我需要做些什么 hash才能没有这个错误呢?

谢谢



Answers1:

在集群中,key会被划分到不同的槽中。不同的节点会拥有散列槽的一个子集。

多个key的操作、事务或者lua脚本调用多个key是允许的,只要所有被调用的key都在一个节点的hash槽中就可以。

redis集群实现了所有非分布式版本的单key命令。复杂命令的执行像set类型联合或者插入也是可以实现的,只要保证所有的key都属于单个节点。

你可以使用Hash Tags强制所有的key属于一个节点。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容