redis自带的集群

1.进入redis安装目录下的utils中
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
2.编辑create-cluster脚本
读readme可以查看用法。
在这里插入图片描述

3.启动集群中的6个redis实例。
端口号分别是30001、30002.。。。。。30006.
在这里插入图片描述
4. 各master领取槽位,并给master设置slave。
在这里插入图片描述
5.测试
如果用普通的客户端方式连接:redis-cli -p 30001,set k1,此时会报错,告诉我们,要去30003的redis去创建k1(因为k1被计算后分在了12706槽位)。
如果用集群的方式连接客户端:redis-cli -c -p 30001,set k1 sdfsdf,此时集群计算后得知应该在30003这台redis上创建,它会自动 redirect 到30003,并将k1 存储在30003这台redis上。
在这里插入图片描述
同理,存取其他值,也是根据计算得到的槽位自己路由到不同的reids上执行。
在这里插入图片描述
6.事务
在这里插入图片描述
7.带标签的key 开启事务
对于带有同一标签的key会被计算位于同一槽位,从而存储在同一redis实例中,不会来回跳转,此时可以开启事务,执行事务。
在这里插入图片描述
8.停止集群,清理集群
在这里插入图片描述
9.命令的方式启动集群,做到真正的分布式集群。
上面通过脚本启动集群的方式只能在单机上启动多个实例,并不能真正做到分布式。通过命令的方式可以指定ip、port,真正的创建集群
在这里插入图片描述
在这里插入图片描述
10.查看帮助
在这里插入图片描述
11.数据倾斜时重新移动。
在这里插入图片描述
从30001这台机器上移动2000个槽位到指定Id对应的机器上,可以指定要移动的数据源头,指定完后输入 ‘done’ 代表输入结束。此处只知道从30001上移动2000个槽位,但是具体移动哪些槽位,我们并不知道,由redis自动执行的。
在这里插入图片描述
12.检查移动数据后的结果
可以看出,此时这三台机器上的槽位数已经是移动后的了。
在这里插入图片描述
除此之外,还可以通过check命令查看
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值