redis槽位为什么是16384个?

redis槽位为什么是16384个?参考 https://blog.csdn.net/qq_38262266/article/details/108816456slot总共有16384个,这个数字是由redis的作者给定的一个比较合理的数据,crc16算法产生的哈希值有16bit,也就是说有2^16=65536个值,但是为

大家好,欢迎来到IT知识分享网。redis槽位为什么是16384个?

参考 https://blog.csdn.net/qq_38262266/article/details/108816456


slot总共有16384个,这个数字是由redis的作者给定的一个比较合理的数据,crc16算法产生的哈希值有16bit,也就是说有2^16=65536个值,但是为什么只取了16384个槽?因为redis集群的设计是节点间会相互ping-pong通信,那就会有消息产生,槽位、节点数越大,通信需要携带的数据也就越大,而节点至少每秒会发送一次ping消息,网络资源负荷就很高,实际场景中的redis节点数据不会超过1000个,而节点数据小于1000的时候,16384个槽位足够使用了。

 

总结:因为redis-cluster集群之间会互相通信,需要携带一定的数据,这个数据量会随着槽位地增加而增大造成网络拥塞,降低了redis的性能。redis-cluster的节点一般不会超过1000,而1000以内,16384个槽完全够用了,而且性能也处于健康的状态。可以理解为设计者针对实际使用情况的优化设计。

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/32171.html

(0)
上一篇 2023-11-10 19:33
下一篇 2023-11-26 10:15

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信