当前位置:网站首页>多主复制的适用场景(1)-多IDC
多主复制的适用场景(1)-多IDC
2022-07-31 15:27:00 【华为云】
3 多主复制
之前都是单主的主从复制架构,主从复制有个明显缺点:只有一个主节点,而所有写都必须通过它^iv。万一和主节点之间的网络中断而导致无法连接到主节点,主从复制方案就影响所有DB写入操作。
对主从复制模型进行扩展,则可配置多个主节点,每个主节点都能处理写,后面复制的流程类似:处理写的每个【主节点】都必须将该数据更改转发到所有其他节点 。这就是多主节点(也称为主-主,或主动/主动)复制。 此时,每个主节点还同时扮演其他主节点的从节点。
3.1 适用场景
在一个IDC内部使用多个主节点没啥大意义,因复杂性远超带来的好处。 但某些case,多活配置也合理:
3.1.1 多IDC
为容忍整个IDC级别故障或更接近用户,可将DB的副本横跨多个IDC。而若使用常规的主从复制模型,主节点必须位于其中一个IDC,且所有写请求都须经过该IDC。
有了多主节点复制模型,则能在每个IDC都配置主节点,如图-6所示基本架构:
- 在每个IDC内,采用主从复制
- IDC之间,由各个IDC的主节点负责和其它IDC的主节点进行数据交换、更新

比较多数据中心时,单主和多主:
性能
- 单活,每个写入须穿过互联网,进入主节点数据中心。这可能会大大增加写延迟,并违背设置多数据中心的初心(就近访问)
- 多活,每个写操作都能在本地IDC快速响应,然后采用异步复制将变化同步到其它IDC。因此,对上层应用有效屏蔽了IDC之间的网络延迟,使得终端用户所体验到的性能更好
容忍数据中心停机
主从复制下,若M所在IDC故障,必须切换至另一个IDC,将其中的1个从节点提升为M。多主模型中,每个IDC则可独立于其他IDC继续运行,发生故障的数据中心在恢复之后更新到最新状态。
容忍网络问题
IDC之间的通信通常经由广域网,大多不如IDC内的本地网络可靠。单主配置对这数据中心间的连接问题非常敏感,因为通过这个连接进行的写操作是同步的。采用异步复制功能的多活配置通常能更好地承受网络问题:临时的网络中断并不会妨碍正在处理的写入。
有些数据库默认情况下支持多主配置,但使用外部工具实现也很常见,如MySQL的Tungsten Replicator。
尽管多主复制有这些优势,但也有一个很大的缺点:两个不同IDC可能会同时修改相同的数据,写冲突必须解决(图-6中conflict resolution)。
由于多主复制在许多数据库中只是新增功能,所以还存在微妙的配置缺陷,与其他数据库功能如自增主键、触发器、完整性约束之间,交互有时会出现意外。因此,很多人觉得多主复制比较危险,应尽可能避免。
边栏推荐
- Grafana安装后web打开报错
- R语言ggplot2可视化:使用ggpubr包的ggboxplot函数可视化箱图、使用font函数自定义图例标题文本(legend.title)字体的大小、颜色、样式(粗体、斜体)
- Word表格转到Excel中
- Emmet 语法
- Use of radiobutton
- [CUDA study notes] First acquaintance with CUDA
- Efficient use of RecyclerView Section 1
- Female service community product design
- Internet banking stolen?This article tells you how to use online banking safely
- ASP.NET Core 产生连续 Guid
猜你喜欢

微信聊天记录中搜索红包

"Autumn Recruitment Series" MySQL Interview Core 25 Questions (with answers)

Word表格转到Excel中

模板与泛型编程值typelist实现

C语言”三子棋“升级版(模式选择+AI下棋)

Kubernetes common commands

浏览器自带的拾色器

Female service community product design

Kubernetes principle analysis and practical application manual, too complete

abaqus find contact pairs报错:surface name is already in use
随机推荐
格林美瑞交所IPO:募资3.8亿美元 更多中国企业将赴欧洲上市
为什么毕业季不要表白?
四象限时间管理有多好用?
RecyclerView高效使用第三节
双边滤波加速「建议收藏」
STM32(十)------- SPI通信
MySQL database operations
DBeaver连接MySQL 8.x时Public Key Retrieval is not allowed 错误解决
工程水文学复习资料
R语言ggplot2可视化:使用ggpubr包的ggmaplot函数可视化MA图(MA-plot)、font.legend参数和font.main参数设置标题和图例字体加粗
Ubantu专题4:xshell、xftp连接接虚拟机以及设置xshell复制粘贴快捷键
大健云仓冲刺美股:增营收反减利润 京东与DCM是股东
长得很怪的箱图
org.apache.jasperException(could not initialize class org)
TextBlock控件入门基础工具使用用法,取上法入门
自动化测试如何创造业务价值?
Female service community product design
工程水文学名词解释总结
Kubernetes原理剖析与实战应用手册,太全了
AVH部署实践 (一) | 在Arm虚拟硬件上部署飞桨模型