redis集群

尚硅谷bilibili视频教程:https://www.bilibili.com/video/BV1Rv41177Af?p=36
参考博文:https://www.cnblogs.com/vieta/p/11192137.html

一、集群的概念

所谓的集群,就是通过添加服务器的数量,提供相同的服务,从而让服务器达到一个稳定、高效的状态。

1.使用集群的必要性

问题:我们已经部署好了redis,并且能启动一个redis,实现数据的读写,为什么还要学习redis集群?

答:
(1)单个redis存在不稳定性:假设一个系统应用只用一台redis服务器、当这台redis的服务宕机了,那么这个系统的redis方面的服务就不能用了。所以我们可以将这个系统的不同模块的功能需要用到的redis服务部署到不同的redis服务器中,例如一个电商系统将订单模块需要用到的redis服务部署到只提供订单模块服务的redis服务器中,用户模块部署到只提供用户模块服务的redis服务器中。这样当订单模块宕机后用户模块的redis服务还是可用的。

(2)单个redis的读写能力是有限的:当用户量是成百上千万时,显然单个redis服务器是远远不够的所以我们可以对应不同模块部署多个redis服务器,这样就可以有效缓解单个服务器压力过大导致宕机的风险了。

总结:redis集群是为了强化redis的读写能力

2.如何学习redis集群

(1)redis集群中,每一个redis称之为一个节点。
(2)redis集群中,有两种类型的节点:主节点(master)、从节点(slave)。
(3)redis集群,是基于redis主从复制实现。

二、主从复制

主从复制
哨兵模式

三、搭建Redis集群

这里搭建6个实例,6379,6380,6381,6389,6390,6391。
对应的主从关6379主6389从,6380主6390从,6381主6391从机。

1.集群配置文件的修改

在主从配置的配置文件基础上添加如下配置即可

cluster-enabled yes    打开集群模式
cluster-config-file nodes-6379.conf  设定节点配置文件名
cluster-node-timeout 15000   设定节点失联时间,超过该时间(毫秒),集群自动进行主从切换。

既是

include /myredis/redis.conf
pidfile /var/run/redis_6379.pid
port 6379
protected-mode no
dbfilename dump6379.rdb

cluster-enabled yes
cluster-config-file nodes-6379.conf
cluster-node-timeout 15000

将redis6379.conf配置文件修改完之后,将这个文件拷贝为其他配置文件,然后改下对应的端口号即可。

2.启动6个redis服务

先查看有没有重复端口的redis服务,如果有就先将这些服务杀掉。然后再启动

在这里插入图片描述启动成功后、会在同目录下生成节点配置文件名
在这里插入图片描述

3.将六个节点合成一个集群

  1. 组合之前,请确保所有redis实例启动后,nodes-xxxx.conf文件都生成正常。
  2. 进入到存放你的redis安装包解压好了的路径src下,我的路径是 /opt/redis-6.2.4/src
  3. 执行结合命令前需要开放你的集群端口和总线端口、总线端口就是你的主机前面加个一例如6379的主线端口为16379
    参考:https://blog.csdn.net/XIANZHIXIANZHIXIAN/article/details/82392172

执行命令:

redis-cli --cluster create --cluster-replicas 1 121.40.235.71:6379 121.40.235.71:6380 121.40.235.71:6381 121.40.235.71:6389 121.40.235.71:6390 121.40.235.71:6391

这里的ip地址填你redis的ip地址。
--replicas 1的意思是采用最简单的方式配置集群,一台主机,一台从机,正好三组。

若报如下错
在这里插入图片描述则说明bind 127.0.0.1 -::1 没有注解掉、 在连接之前要先将redis.conf配置文件中的 bind 127.0.0.1 -::1 注解掉,否者不允许外部访问本终端上的redis。

若报如下错:
在这里插入图片描述连接每个redis服务执行config protected-mode no即可。
再执行合并命令
在这里插入图片描述显示上图信息表示合并成功。
到这里就表示去中心化集群搭建成功。

进入集群方式为随便找一个redis服务器使用命令

redis-cli -c -p 端口号
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值