Redis6之集群

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

必要性

        单个redis存在不稳定性。当redis服务宕机了,就没有可用的服务了。而且单个redis的读写能力是有限的。使用redis集群可以强化redis的读写能力,并且当一台服务器宕机了,其他服务器还能正常工作,不影响使用

名词

      redis集群中,每一个redis称之为一个节点,集群无中心节点。  

      redis集群中,有两种类型的节点:主节点(master)、从节点(slave),多个主节点,每一个主节点都可读可写

      redis集群,是基于redis主从复制实现

      节点之间会互相通信,两两相连

好处

        服务器的容量不足或者进行并发写操作的用户过多等情况下可以使用多台Redis集群的方式缓解压力

特点

        集群实现了对Redis的水平扩容,即启动N个redis节点,将整个数据库分布存储在这N个节点中,每个节点存储总数据的1/N

        集群通过分区来提供一定程度的可用性: 即使集群中有一部分节点失效或者无法进行通讯, 集群也可以继续处理命令请求

集群环境搭建

        1.复制5个redis出来,作为3主3从,端口可以自定义

        2.修改配置:redis.conf

port 7100 # 本示例6个节点端口分别为7100,7200,7300,7400,7500,7600   
daemonize yes # r后台运行   
pidfile /var/run/redis_7100.pid # pidfile文件对应7100,7200,7300,7400,7500,7600   
cluster-enabled yes # 开启集群模式   
masterauth passw0rd # 如果设置了密码,需要指定master密码  
cluster-config-file nodes_7100.conf # 集群的配置文件,同样对应7100,7200等六个节点  
cluster-node-timeout 15000 # 请求超时 默认15秒,可自行设置 

       3.分别以端口7100,7200,7300,7400,7500,7600 启动六个实例(如果是每个服务器一个实例则配置可一样) 

[root@dev-server-1 cluster]# redis-server redis_7100.conf  
[root@dev-server-1 cluster]# redis-server redis_7200.conf  

        4.然后通过命令将这个6个实例组成一个3主节点3从节点的集群

redis-cli --cluster create --cluster-replicas 1 127.0.0.1:7100 127.0.0.1:7200 127.0.0.1:7300 127.0.0.1:7400 127.0.0.1:7500 127.0.0.1:7600 -a passw0rd 

优缺点

优点:

        1、无中心架构,节点间数据共享,可动态调整数据分布;
        2、节点可动态添加删除,扩张性比较灵活;
        3、部分节点异常,不影响整体集群的可用性;

缺点:

        1、集群实现比较复杂;
        2、批量操作指令(mget、mset等)支持有限;
        3、事务操作支持有限

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值