架构训练营学习笔记:4-2 存储架构模式之复制架构

高可用的关键指标

问题:分为故障跟灾难。不是有了多活架构就不在用复制架构 ,还是之前的合适原则:多活架构的技术复杂度 跟成本都比复制架构高。

 高可用的关键指标

  

恢复时间目标(RecoveryTimeObjective,RTO)指为避免在灾难发生后业务连续性中断带来不可接受的结果而使业务流程必须恢复的最早时间期限和服务水平,RTO通常指使得基础设施和系统恢复运行的时间。

恢复点目标(RecoveryPointObjective,RPO)指最大可容忍的数据丢失量,用时间来衡量,这个值代表着数据必须恢复的最早时间点,数据量越大,意味着要投入的资金或者其他资源越多,才能确保在灾难事件中损失的数据越少。

最大允许中断时间(MTD )=RTO+ WRT

工作恢复时间(WorkRecoveryTime,WRT)指系统恢复正常后,恢复业务所需要的时间 ,因为要进行各种业务检查、校验、修复。

主备复制与主从复制

 本质:通过冗余来提升可用性,通过叠加来提升读性能

变化:备机是否提供复制源功能,备机部署地点,主从主备混合部署

优点:实现简单,只需要数据复制,无状态检测和角色切换

缺点:需人工干预,RTO比较大

主备级联复制

变化:备机作为复制源,例如图中备机1就是备机2的复制源

优点:主机故障后,切换备机1为主机,方便快捷,直接修改配置即可,无需修改备机2的配置,无需判断备机1和备机2的数据覆盖问题

缺点:备机1对备份非常关键,备机1宕机会导致两台备份机都备份失效

应用:MySQL、Redis支持这种模式

实际情况下,很少有 团队采用这种方案,这种方案优点减轻多个备机读取主机压力,减轻压力有限,还不如分库分表更实用,此处仅做用对比学习。

主备架构的灾备部署

场景1:IDC-1和IDC-2在同一个城市,可以应对机房级别的灾难

场景2:IDC-1和IDC-2不在同一个城市,可以应对城市级别的灾难

变种:主从架构的灾备部署

场景1:IDC-1 和 IDC-2 在同一个城市,可以应对机房级别的灾难

场景2:IDC-1 和 IDC-2 不在同一个城市,可以应对城市级别的灾难

这里,为啥不把IDC-2的备机改为从机提供读取服务,考虑跨城市的延迟较大。

案例,redis 的模式有主从,主从是client负责的调用。

双机切换架构

主备切换:复杂度很高

优点:可以自动实现故障恢复,RTO短

缺点:实现复杂,需要实现数据复制、状态检测、故障切换、数据冲突处理

应用:内部系统、管理系统(数据量小,业务容忍度高)

主从切换

整体和主备切换类似,差异点在于“切换阶段”,只有主机提供读写服务,主机性能有风险,数据量高情况有可能扛不住。

集群选举架构

 

优点:可以自动实现故障恢复、RTO短,可用性更高

缺点:实现复杂,需要实现数据复制、状态检测、选举算法、故障切换、数据冲突处理

应用:应用广泛,例如Redis、MongoDB等

 案例:

bully\raft\zab\paxos

 

最佳实践-基于ZooKeeper实现

 

基于ZooKeeper来实现双机切换或者集权选举,能够大大降低复杂度,优势有如下几点:

  1. ZooKeeper已经保证了自我的高可用
  2. 基于ZooKeeper,切换或选举过程实现比较简单
  3. ZooKeeper可以有多用途

这里李老师只是普及下,没有深入的展开去讲。es 的7版本后,也有不同于之前的bully算法。这块有待梳理。 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/29649.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

EasyCVR录像阈值配置未生效,是什么原因?

有用户反馈,在平台中设置了录像阈值不生效,导致磁盘爆满。针对该反馈,我们立即进行了排查。 EasyCVR基于云边端一体化架构,可支持多协议、多类型设备接入,在视频能力上,平台可实现视频直播、录像、回放、检…

软件测试测试用例

等价类:把输入的数据可以分为有效的数据和无效的数据 被测试的对象输入的数据: 1、有效的数据 2、无效的数据 测试一个产品,需要考虑它的正确场景,也需要考虑它的异常场景 边界值:边界值测试用例是针对等价类测试用例方法的补…

Stable Diffusion学习笔记

一些零散笔记 灰常好的模型网站 LiblibAI哩布哩布AI-中国领先原创AI模型分享社区 出图效率倍增!47个高质量的 Stable Diffusion 常用模型推荐 - 优设网 - 学设计上优设 关键词Prompt顺序 画质 风格 主体 外表、描述 表情、情绪 姿势 背景 杂项 同时可以…

星火认知大模型,让我感受到了国产AI的崛起

文章目录 一、申请和测试代码二、实测GPT4.0和星火认知大模型的对比2.1 测试网站2.2 经典问题提问对比2.3 代码问题提问对比2.4 论文问题对比2.5 评价 一、申请和测试代码 在我之前的一篇文章中,我分享了如何申请星火认知大模型的内测,并提供了一份可以…

在分区工具上,格式化分区和删除分区. 两者有什么不一样吗?

1.格式化分区:就是重建文件系统,等于把目标分区的数据全部清掉。 删除分区:你删除后可以再重新分区,可以分区多个分区,前提是“删除分区”的大小足够大。分了区,还必须格式化,才能用。 只有分了…

Lottie源代码解析

Lottie-iOS Lottie动画的原理: 一个完整动画View,是由很多个子Layer 组成,而每个子Layer主要通过shapes(形状),masks(蒙版),transform三大部分进行动画。Lottie框架通过…

Spring Data JPA使用规则和审计的学习

一、引入依赖 完整的pom文件如下所示: <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http…

rabbitmq部署(docker方式)

前言&#xff1a;rabbitmq一旦有漏洞&#xff0c;版本升级麻烦&#xff0c;于是改为docker部署 环境&#xff1a;centos7 #停掉之前的服务 systemctl stop rabbitmq-server systemctl disable rabbitmq-server 查了官网&#xff0c;当前3.11.x 最高版本是3.11.19, 虽然3.12…

什么是从人类反馈中强化学习(RLHF)?

目录 一、什么是RLHF? 二、语言作为强化学习问题 三、用于语言模型的RLHF 四、ChatGPT如何使用RLHF 五、RLHF对语言模型的限制 自从OpenAI公司发布ChatGPT以来&#xff0c;人们对大型语言模型(LLM)的这一重大进步感到兴奋。虽然ChatGPT与其他最先进的大型语言模型大小相同…

华为ospf路由协议在局域网中的高级应用案例

关键配置&#xff1a; 1、出口为ospf区域0&#xff0c;下联汇聚依次区域1、2…&#xff0c;非骨干全部为完全nssa区域 2、核心&#xff08;abr&#xff09;上对非骨干区域进行路由汇总&#xff0c;用于解决出口两台路由的条目数量 3、ospf静默接口配置在汇聚下联接接入交换机的…

回归预测 | MATLAB实现基于KELM-Adaboost核极限学习机结合AdaBoost多输入单输出回归预测

回归预测 | MATLAB实现基于KELM-Adaboost核极限学习机结合AdaBoost多输入单输出回归预测 目录 回归预测 | MATLAB实现基于KELM-Adaboost核极限学习机结合AdaBoost多输入单输出回归预测预测效果基本介绍模型描述程序设计参考资料 预测效果 基本介绍 1.MATLAB实现基于KELM-Adaboo…

【Mac使用笔记】之 Homebrew

Homebrew更新&#xff1a; brew update && brew upgrade 当出现错误&#xff1a; fatal: couldnt find remote ref refs/heads/master 执行&#xff1a; brew tap --repair Ruby安装&#xff1a; 1、查看当前Homebrew版本&#xff1a; brew --version2、查看当前…