zoukankan      html  css  js  c++  java
  • Redis集群中,是选择奇数节点还是偶数节点?(理论)

    我们来通过一组组示例进行分析:

        3节点环境:1个master、2个slave

            存储空间:最大等于1个节点的容量。(如果是2个master的话,那么数据会丢失一部分)

            冗余性:允许1个节点故障。

            

        4节点环境:2个master、2个slave

            存储空间:2个节点的容量。

            冗余性:允许1个节点故障。(集群中,半数以上节点认为故障,才会选举。)

        

        5节点环境:2个master、3个slave

            存储空间:2个节点的容量。

            冗余性:允许2个节点故障。

            

        6节点环境:3个master、3个slave

            存储空间:3个节点的容量。

            冗余性:允许2个节点故障。

            

        依次类推... ...

        

        3节点和4节点对比:

            容量:后者多了1个节点的存储空间。

            冗余:都是允许1个节点故障。

            

        4节点和5节点对比:

            容量:都是2个节点的容量。

            冗余:后者多了1个节点的冗余。

                

        通过对比发现: redis集群选择奇数节点还是偶数,还是要看业务的需求。

        

        举个例子:业务的数据总量2个节点就可以满足,那么就看业务对冗余性的要求,

                        如果有1个冗余就OK,那么就考虑4个节点的集群。

                        如果要更高的冗余,那么就考虑5个节点的集群。

                           

        不过话又说回来了,企业既然选择了redis集群,公司也不差这一个节点的钱,

        一般做法是偶数节点的redis集群。

  • 相关阅读:
    MySQL数据库8(四)数据表基本操作
    MYSQL 配置文件
    MySQL数据库8(三)数据库基本操作
    flink-connector-kafka consumer的topic分区分配源码
    kafka consumer assign 和 subscribe模式差异分析
    kafka 配置kerberos校验以及开启acl实践
    二路归并排序的java实现
    storm RollingTopWords 实时top-N计算任务窗口设计
    PriorityBlockingQueue优先队列的二叉堆实现
    堆排序算法的java实现
  • 原文地址:https://www.cnblogs.com/Chary/p/13440336.html
Copyright © 2011-2022 走看看