Redis 集群是一个提供在多个Redis间节点间共享数据的程序集。
Redis集群并不支持处理多个keys的命令,因为这需要在不同的节点间移动数据,从而达不到像Redis那样的性能,在高负载的情况下可能会导致不可预料的错误.
Redis 集群通过分区来提供一定程度的可用性,在实际环境中当某个节点宕机或者不可达的情况下继续处理命令. Redis 集群的优势:
Redis 集群有16384个哈希槽,每个key通过CRC16校验后对16384取模来决定放置哪个槽.集群的每个节点负责一部分hash槽,举个例子,比如当前集群有3个节点,那么:
添加命令
[root@server1 ~]# redis-trib.rb 可以使用
搭建集群:
对其他节点进行同样的配置:
进入对应的目录修改端口号和文件名
分别启动
redis-server redis.conf
最后查看进程:
创建集群分配哈希槽
7005已经成为新的master
重新激活7002:
7002继承slave角色
破坏其中一个master后,对应的slave机会自动接管master,但当一组master和slave都down掉后,集群无法使用