MYSQL MONGODB REDIS 同步原理以及高可用性对比
admin
2023-04-12 09:04:07
0

MySQL

1、异步复制:

2、半同步复制:同步出现超时后会自动变回异步复制;


MongoDB

MongoDB的副本集是一组mongod进程的集合,提供冗余和高可用性。最小的的副本集包含(1个primary、1个secondary和1个arbiter),大多数的部署包含3个节点(1个primary、2个secondary)。副本集最多可以支持12个节点,超过则需要使用主从架构。

primary:接收所有客户端的写操作。每个副本集只能存在一个primary,为了支持数据复制,primary的所有改变数据的操作都会记录在oplog中。

secondary:通过复制primary的oplog并且重放oplog保持和primary的数据一致性(异步的有延时)。当主不可用的时候,副本集会从secondary中选出一个作为primary。默认所有的read操作也会指向primary,但是可以通过配置将read操作指向secondary(因为复制数据有延迟所以无法保证保证数据strict consistency)。可以通过配置priority来空值变成primary的优先级,priority=0表示不能成为primary,另外还可以配置隐藏的副本成员。

arbiter:arbiter不存储数据,仅仅用来来选举primary。当集群节点偶数的时候,通过添加一个artiber来获取一个投票最多的secondary作为primary。arbiter不需要特殊的硬件。

Replica Set Elcetions:选举的过程中,副本集因为没有primary所以不接手写操作,并且所有成员都是只读的。如果副本集的大多数成员不可用,副本集将选不出primary。

Heartbeats:副本集成员每2秒钟给其他的成员发一个heartbeats(pings),如果一个心跳10秒钟没有收到响应,心跳的发送方将会把心跳的接收方标为不可到达的。



副本集特性:异步、自动故障切换;

可以设置一种类似于MySQL半同步的功能,可以指定多少台台节点完成写操作同步后才返回,有超时时间。




一个典型的副本集结构


Redis






MySQL和MongoDB对比

MySQL存在半同步复制,MongoDB也存在半同步复制。



相关内容

热门资讯

终于了解“天天斗地主究竟有挂吗... 网上科普关于“天天斗地主有没有挂”话题很是火热,小编也是针对天天斗地主作*弊开挂的方法以及开挂对应的...
【第一资讯】“开心安徽比鸡怎么... 有 亲,根据资深记者爆料开心安徽比鸡是可以开挂的,确实有挂(咨询软件无需...
终于了解“授权大厅牛牛开挂器?... 有 亲,根据资深记者爆料授权大厅牛牛是可以开挂的,确实有挂(咨询软件无需...
今日重磅消息“免安装麻将机干扰... 网上科普关于“免安装麻将机干扰器有没有挂”话题很是火热,小编也是针对免安装麻将机干扰器作*弊开挂的方...
2025金融大模型评测体系在沪... 证券时报记者 陈雨康 上海人工智能实验室与上海库帕思科技有限公司联合主办的“2025金融大模型评测体...
【今日要闻】“海贝大厅炸/金/... 网上科普关于“海贝大厅炸/金/花有没有挂”话题很是火热,小编也是针对海贝大厅炸/金/花作*弊开挂的方...
终于了解“杭州麻将到底是不是挂... 家人们!今天小编来为大家解答杭州麻将透视挂怎么安装这个问题咨询软件客服徽4282891的挂在哪里买很...
我来教教您“至尊宝牛牛究竟有挂... 我来教教您“至尊宝牛牛究竟有挂吗?”(太坑了原来有挂)您好,至尊宝牛牛这个游戏其实有挂的,确实是有挂...
【第一消息】“开心泉州麻将怎么... 有 亲,根据资深记者爆料开心泉州麻将是可以开挂的,确实有挂(咨询软件无需...
终于明白“网易麻将怎么装挂?”... 终于明白“网易麻将怎么装挂?”(果然有透视挂)您好,网易麻将这个游戏其实有挂的,确实是有挂的,需要了...