一、redis分片集群
redis 3.x版本后开始支持
作用:
1、提升数据的读写速度
2、提升可用性
1、工作原理
Redis集群使用哈希槽slot进行数据分片
Redis集群有16384个哈希槽, 每个key通过CRC16校验后对16384取模来决定放置哪个槽, 集群的每个节点负责一部分hash槽
举个例子,比如当前集群有3个节点,
那么:
节点 A 包含 0 到 5500号哈希槽.
节点 B 包含5501 到 11000 号哈希槽.
节点 C 包含11001 到 16384号哈希槽.
数据究竟存放到哪个槽上?
数据做hash运算除以16384除余
2、部署分片集群
环境描述:
192.168.140.10 3个集群模式的实例 7001 7002 7003
192.168.140.11 3个集群模式的实例 7004 7005 7006
1)分别在两台服务器上安装redis
另一台同样操作
2)创建实例目录,拷贝配置文件
3)编辑实例的配置文件
配置其他实例的时候可以将7001的配置文件覆盖到其他实例,使用sed将所有的7001替换为7002
4)启动实例
5)参考上述方法配置第二台服务器并启动实例
6)创建集群
7)连接集群、测试数据读写
连接时连接主服务器
-c参数是连接集群,不加-c连接的是实例