一、常规复制架构(Master --- Slaves)
在实际应用场景中,
MySQL
复制
90%
以上都是一个
Master
复制到一个或者多个
Slave
的架构模式。
缺点:
1
、
master
不能停机,停机就不能接收写请求
2
、
slave
过多会出现延迟
由于
master
需要进行常规维护停机了,那么必须要把一个slave提成
master
,选哪一个是一个问题?
某一个
slave
提成
master
了,就存在当前
master
和之前的master数据不一致的情况,并且之
master
并没有保存当前master节点的
binlog
文件和
pos
位置。
二、
Dual Master 复制架构(Master --- Master) Master)
可以配合一个第三方的工具,比如keepalived
轻松做到
IP
的漂移,停机维护也不会影响写操作。
三、
级联复制架构
(Master --- Slaves --- Slaves ...)
如果读压力加大,就需要更多的
slave
来解决,但是如果slave的复制全部从
master
复制,势必会加大
master
的复制IO的压力,所以就出现了级联复制,减轻
master
压力。
缺点:
slave
延迟更加大了
四、
Dual Master
与级联复制结合架构
(Master - Master - Slaves)
这样解决了单点
master
的问题,解决了slave
级联延迟的问题
.