首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    基于Docker的Redis高可用集群搭建(redis-sentinel)

    之前介绍了用docker来搭建redis主从环境,但这只是对数据添加了从库备份(主从复制),当主库down掉的时候,从库是不会自动升级为主库的,也就是说,该redis主从集群并非是高可用的。   目前来说,高可用(主从复制、主从切换)redis集群有两种方案,一种是redis-sentinel,只有一个master,各实例数据保持一致;一种是redis-cluster,也叫分布式redis集群,可以有多个master,数据分片分布在这些master上。   本文介绍基于docker和redis-sentinel的高可用redis集群搭建,大多数情况下,redis-sentinel也需要做高可用,这里先对redis搭建一主二从环境,另外需要3个redis-sentinel监控redis master。

    01

    Redis集群搭建

    1.所有的Redis节点彼此互联(PING-PONG机制),内部使用二进制协议优化传输速度和带宽 2.节点的fail是通过集群中超过半数的节点检测失效时才生效 3.客户端与Redis节点直连,不需要中间proxy层,客户端不需要连接集群所有节点,连接集群中任何一个可用节点即可 4.Redis-cluster把所有的物理节点映射到[0-16383]slot上,cluster (簇)负责维护node<->slot<->value。Redis集群中内置了16384个哈希槽,当需要在Redis集群中放置一个key-value时,Redis先对key使用crc16算法算出一个结果,然后把结果对 16384 求余数,这样每个key都会对应一个编号在 0-16383 之间的哈希槽,Redis 会根据节点数量大致均等的将哈希槽映射到不同的节点

    01

    一个例子,看懂关系型数据库和Redis的区别

    互联网产品正从“满足用户单向浏览的需求”发展为“满足用户个性化信息获取及社交的需求”。随着 5G的到来,会有越来越多“不可思议”的场景被搬到互联网上。这就要求产品做到以用户和关系为基础,对海量数据进行实时分析计算。 这也就意味着,对于用户的每次请求,服务器端都要查询海量数据、多维度数据,还要将这些数据进行聚合、过滤、筛选和排序,最终响应给用户。如果这些数据全部从数据库中加载,则将是一个无法忍受的漫长过程。 1 为什么需要缓存 使用缓存可以提升系统性能,以及改善用户体验。 缓存的意义是:通过开辟一个新的数据

    03

    扫码

    添加站长 进交流群

    领取专属 10元无门槛券

    手把手带您无忧上云

    扫码加入开发者社群

    相关资讯

    热门标签

    活动推荐

      运营活动

      活动名称
      广告关闭
      领券