Redis 学习 --->>> 13、Redis 集群 -> 集群故障恢复和java开启集群、集群的优缺点

6、集群故障恢复

如果在运行过程中有一个机器宕机了,你遵循了一个节点一个服务器,中从分开。这样当前节点的从服务器就会顶替主服务器成为主服务器,以前的主服务器修好了重启也是从服务器。

  1. 关闭一个服务器

  2. 查看集群信息

    7f5250c87ffd7c82b187878e3939be731d557deb 192.168.126.129:6379@16379 master,fail - 1648631325134 1648631322000 1 disconnected
    
    fe9b7bae11d2907b3c5f16e1e64d21311df1ee35 192.168.126.129:6389@16389 master - 0 1648631391000 7 connected 0-5460
    
    

    说6379节点的服务器出问题了,6389 节点的服务器又变成了主节点

  3. 再打开服务器再查看集群信息,6379 节点变成了6389的从节点

    7f5250c87ffd7c82b187878e3939be731d557deb 192.168.126.129:6379@16379 myself,slave fe9b7bae11d2907b3c5f16e1e64d21311df1ee35 0 1648632035000 7 connected
    

如果所有某一段插槽的主从节点都宕掉,redis服务是否还能继续?

如果某一段插槽的主从都挂掉,而 cluster-require-full-coverage 为yes ,那么 ,整个集群都挂掉

# cluster-require-full-coverage yes

如果某一段插槽的主从都挂掉,而 cluster-require-full-coverage 为no ,那么,该插槽数据全都不能使用,也无法存储。

redis.conf 中的参数 cluster-require-full-coverage

7、集群的 jedis 开发

public class JedisClusterTest {
  public static void main(String[] args) { 
     Set<HostAndPort>set =new HashSet<HostAndPort>();
     JedisCluster jedisCluster=new JedisCluster("192.168.31.211",6379);
     jedisCluster.set("k1", "v1");
     System.out.println(jedisCluster.get("k1"));
     jedisCluster.close()
  }
}

8、集群的好处和坏处

好处
  • 实现扩容
  • 分摊压力
  • 无中心配置相对简单
劣势
  • 多键操作是不被支持的
  • 多键的Redis事务是不被支持的。lua脚本不被支持
  • 由于集群方案出现较晚,很多公司已经采用了其他的集群方案,而代理或者客户端分片的方案想要迁移至redis cluster,需要整体迁移而不是逐步过渡,复杂度较大。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值