1、简述redis集群的实现原理

Redis 的分布式存储,也就是说每台 Redis 节点上存储不同的内容 节点的fail是通过集群中超过半数的节点检测失效时才生效。 当我们的存取的 Key到达的时候,Redis 会根据 crc16的算法得出一个结果,然后把结果对 16384 求余数,这样每个 key 都会对应一个编号在 0-16383 之间的哈希槽,通过这个值,去找到对应的插槽所对应的节点,然后直接自动跳转到这个对应的节点上进行存取操作。 为了保证高可用,redis-cluster集群引入了主从模式,一个主节点对应一个或者多个从节点,当主节点宕机的时候,就会启用从节点。当其它主节点ping一个主节点A时,如果半数以上的主节点与A通信超时,那么认为主节点A宕机了。如果主节点A和它的从节点A1都宕机了,那么该集群就无法再提供服务了。

2、基于redis5的redis cluster部属

vi redis6379.conf port 6379 cluster-enabled yes cluster-config-file nodes.conf vi redis6381.conf port 6381 cluster-enabled yes cluster-config-file nodes.conf

redis-cli --cluster create 127.0.0.1:6379 127.0.0.1:6381 127.0.0.1:6382 127.0.0.1:6383 127.0.0.1:6384 127.0.0.1:6385 --cluster-replicas 1