hash+取余:hash(key)/n(节点数),根据取余结果存储到不同的节点。
缺点:节点扩容导致较大数据迁移,翻倍扩容迁移50%左右,其他扩容迁移更大。
t虚拟oken(0-232)环,hash(key) 顺时针寻找就近节点存储数据
优点:节点伸缩的时候只迁移相邻节点,翻倍伸缩可以保证最小数据迁移和负载均衡。
预设虚拟槽,每个节点映射数据槽,CRC16哈希函数,服务端管理节点、槽、数据。
主要包括:节点、meet(节点相互通信)、指派槽、复制
特点:复制、高可用、分片
prort ${port}
daemonize yes
dir ‘‘/opt/redis/data/‘
dbfilename "dump-${port}.rdb"
logfile "${port}.log"
cluster-enabled yes
cluster-config-file "nodes-${port}.conf"
cluster-node-timeout 15000
cluster-require-full-coverage yes (全部节点健康才提供服务,所有改为 no )
redis-cli -h ip -p port cluster meet ip:port
redis-cli -h ip -p port cluster addslots{0...5461}
cluster replicate node-id(集群启动时候分配,不会根据从启动重新分配)
参考:https://www.cnblogs.com/wukc/p/13386488.html
原文:https://www.cnblogs.com/meiyouruguoZ/p/13819745.html