Redian新闻
>
No.173 为什么代理架构常作为缓存实现方案

No.173 为什么代理架构常作为缓存实现方案

科技

引言

本文主要走查了Redis的集群模式的故障发现、故障转移流程。


由于Redis集群模式中存在过高的通信成本。


集群代理模式也常常作为自建缓存集群的方案。


第三部分对常见的缓存代理架构做了简述,文章主要内容有:


一、Redis集群模式的故障发现


二、Redis集群模式的故障转移


三、常见缓存代理架构方案简述

一、Redis集群模式的故障发现

Redis集群模式故障发现过程有主观下线与客观下线。


主观下线简单来说就是我这个节点认为你故障了。


客观下线则是集群中大多数节点认为你故障了。


这些判定与状态的同步均通过Gossip协议PING/PONG来通信。


主观下线流程

  • @1 定时向集群中其他节点发送PING消息
  • @2 超过时间(cluster-node-timeout)未收到接受节点PONG响应消息
  • @3 认为该接受节点存在故障,标记为主观下线状态pfail


客观下线流程

  • @1 Gossip协议PING/PONG通信
    • 携带集群1/10的其他节点状态
    • 当然也包含主观下线节点的信息

  • @2 接受节点维护故障节点下线报告
    • 只处理发送为主节点的请求,从节点不处理
    • 不存在故障节点下线报告,新增下线报告
    • 已存在故障节点下线报告,更新报告时间

  • @3 尝试故障节点的客观下线逻辑
    • 每次收到其他节点的故障状态pfail时,均会尝试客观下线
    • 监测故障下线报告是否过期,过期的报告将被删除
    • 报告时间超过cluster-node-timeout*2未被更新将被移除
    • 下线报告数量小于持有槽主节点的数量的二分之一,退出客观下线
    • 下线报告数量大于持有槽主节点的数量的二分之一,标记客观下线
    • 向集群广播一条fail消息(标记客观下线立即生效、故障从节点发起故障转移流程)



二、Redis集群模式的故障转移


Redis集群模式从节点的作用用于灾备,主节点故障时能够替换顶上去。


Redis的从节点当然也不例外。

  • 多个从节点谁去替换主节点?
  • 选举逻辑以及选举失效是怎么样的?


故障转移流程

从节点中复制的偏移量越大,替换主节点的优先级越高。

从节点获得持有槽的主节点一半以上的选票,可替换为主节点。

从节点向集群广播PONG消息,通知该变更。

三、常见缓存代理架构方案简述


Redis的集群模式客户端直连集群,不需要额外的组件,运维难度较低。


由于集群中每个实例都需要保存路由信息,彼此不断传播通信更新,也造成通信成本进而影响集群规模。


Redis的集群模式也会造成客户端需要重定向,带来复杂性。


因此,缓存代理模式可以解决这种复杂性,当然组件也会增多。


客服端:兼容RESP协议的轻量级客户端。

集群代理:负责域客户端建立连接,以及转发请求到对应的槽位和实例节点。

元数据中心:主要负责存储槽位与实例对应路由信息以及健康检查心跳探测。

集群模式一:集群部署主从架构,需要元数中心负责心跳的健康监测,主从节点的HA,当主节点故障切换从节点接管。

集群模式二:集群部署Raft组,不需要额外的HA心跳监测,集群自闭环,三个节点一组成本较高。


模式一


模式二


兼容RESP协议的轻量级客户端与代理建立长链接。


发送读写请求到代理层,代理根据路由规则将key路由到对应集群的槽位。

管理平台可对元数据信息、槽位分配、代理以及集群部署运维等进行管理。

可视化白屏化对整个集群的监控、告警、大key等水位监控告警。


微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
【网络研讨会】10x Genomics整体解决方案:一站式解锁单细胞、空间及原位新技术韩国一载173人客机在菲律宾冲出跑道【冯站长说安全】2022年10月24日突发!载173人客机降落时冲出跑道!机头严重破损,航司道歉!新加坡暴增1万1732起,创两个半月新高;二度感染占15%,XBB毒株一周内翻倍靠“上海团长”收入1732万元、前5个月毛利率激增,这家公司赴港IPO澳洲留学将大改革! 毕业后或可拿4年签证, 教育部长确认! 为缓解用工荒要用13岁童工?!作为一个普娃的家长,为什么我要读一本讲多动症的书现世姻缘 (二十四)整理了173家国企清单,跳槽必备!今日聚焦:人教社日语教材,惊现“731”!误读?为什么网友们不买账?必读丨为什么代购总喜欢来香港买药?载173人客机降落时冲出跑道!机头严重破损,航司道歉App调用手机权限删除用户视频?得物再回应:删除的是缓存文件橙子番茄,男,中山大学,项目经理,月入2万+,87年,高173,广州夏走英伦D7 丘吉尔庄园 莎翁小镇世界诗盟”加拿大诗歌节“诗歌大赛(第四届)173 白宝德超融合架构与云、传统架构对比第五届进博会意向成交金额735.2亿美元,比上届增长3.9%,展会运行安全有序,实现疫情防控“零感染”如何在面试中巧妙展现架构能力?附200道面试真题+100例经典架构案例拆解 | 极客时间要保卫作为家的住房,而非作为不动产的住房 | 一周荐书三星 Galaxy S23 系列配色方案曝光,多色机身方案可选载有173人!韩国一客机冲出跑道,机头破损严重,航司道歉日本对高个子太不友好了!一173cm的日本女星和199cm的老公结婚后,绝望了…董其昌82岁绝笔书互联网最值得加入的173家国企汇总主流DPU架构实现及技术对比上厕所没带纸的话,用什么代替比较好?TO B的本质是“定制化”不变,“定制化”实现方式求变临聘教师生存实录:“我和结婚只差一个编制”邓先生,男,黑龙江中医药大学,外企高级医学信息专员,月入1.8万,89年,高173,深圳福田自动驾驶升级、开发模式生变,如何实现SOA软件架构快速落地?看来我误解dialect了。。。突发惊险空难!载有173人客机冲出跑道!机头机身全撞碎!乘客逃生滑梯撤离!老二跑了个半马NVIDIA 金融行业高级架构师赵凡:金融领域的交互式语音数字人解决方案 | 直播预告
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。