ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

redis自带的集群

2021-04-27 20:00:39  阅读:159  来源: 互联网

标签:30003 30001 redis k1 集群 自带 移动


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命令查看
在这里插入图片描述
在这里插入图片描述

标签:30003,30001,redis,k1,集群,自带,移动
来源: https://blog.csdn.net/zxjdC/article/details/116207249

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有