spring bootMySQL实战干货

MySQL高可用、高负载、高性能架构

2019-07-31  本文已影响0人  刘一一同学

1. 主从架构

主从架构,实现了读写分离(写操作在master节点,读操作在slave节点),master节点将数据同步存储到slave节点,提高MySQL整体性能/负载。但主从架构存在单点故障隐患,一旦主节点出现故障,整个系统就无法进行写操纵。

主从架构

2. MHA

MHA(Master High Availability),主要解决主节点的高可用问题,核心思想就是尽可能的保证数据一致性,不让数据丢失。当Master节点出现故障时,通过选举机制,Slave自动切换Master。但主节点把数据同步到从节点是有延时的,尤其在高并发情况下,同一刻主节点和从节点数据会不一致。

当Master节点挂掉后,主从节点是如何进行切换的?

MHA

3. PXC

PXC是percona公司的percona xtraDB cluster,简称PXC。它是基于Galera协议的高可用集群方案。在PXC架构中, MySQL无主从之分,每个节点都能够提供读和写操作,并且可以实现多个节点间的数据同步,可保障数据库的服务高可用及数据强一致性。

PXC

3.1 实现原理

在提交事务时,PXC确保所有的节点事务都要成功提交,才返回成功。如果其中有一个不成功,就回滚数据,返回失败。正因为如此,可以确保数据是一致的,而且是实时一致,当然这样就导致性能有损耗。另一个好处就是,每个节点都可以提供读写请求,不管写在哪个节点,都能够保证数据强一致性。

PXC执行流程

3.2 MHA与PXC

4. 推荐方案

上一篇下一篇

猜你喜欢

热点阅读