浅谈 MySQL 集群高可用架构

前言

高可用架构对于互联网服务基本是标配,不管是应用服务仍是数据库服务都须要作到高可用。对于一个系统而言,可能包含不少模块,好比前端应用,缓存,数据库,搜索,消息队列等,每一个模块都须要作到高可用,才能保证整个系统的高可用。对于数据库服务而言,高可用可能更复杂,对用户的服务可用,不只仅是能访问,还须要有正确性保证,所以数据库的高可用方案是一直以来的讨论热点,今天就各类的高可用方案,谈一下我的的一些见解,若有错误,还请指正!!前端

MySQL 主从架构

此种架构,通常初创企业比较经常使用,也便于后面步步的扩展mysql

此架构特色:

一、成本低,布署快速、方便nginx

二、读写分离面试

三、还能经过及时增长从库来减小读库压力redis

四、主库单点故障sql

五、数据一致性问题(同步延迟形成)数据库

MySQL+DRDB 架构

经过 DRBD 基于 block 块的复制模式,快速进行双主故障切换,很大程度上解决主库单点故障问题缓存

此架构特色:

一、高可用软件可以使用 Heartbeat, 全面负责 VIP、数据与 DRBD 服务的管理安全

二、主故障后可自动快速切换,而且从库仍然能经过 VIP 与新主库进行数据同步服务器

三、从库也支持读写分离,可以使用中间件或程序实现

想学习交流HashMap,nginx、dubbo、Spring MVC,分布式、高性能高可用、redis、jvm、多线程、netty、kafka、的加群:190713474 加群获取资料学习,无工做经验不要加哦!

MySQL+MHA 架构

MHA 目前在 Mysql 高可用方案中应该也是比较成熟和常见的方案,它由日本人开发出来,在 mysql 故障切换过程当中,MHA 能作到快速自动切换操做,并且还能最大限度保持数据的一致性

此架构特色:

一、安装布署简单,不影响现有架构

二、自动监控和故障转移

三、保障数据一致性

四、故障切换方式可以使用手动或自动多向选择

五、适应范围大(适用任何存储引擎)

MySQL+MMM 架构

MMM 即 Master-Master Replication Manager for MySQL(mysql 主主复制管理器),是关于 mysql 主主复制配置的监控、故障转移和管理的一套可伸缩的脚本套件(在任什么时候候只有一个节点能够被写入),这个套件也能基于标准的主从配置的任意数量的从服务器进行读负载均衡,因此你能够用它来在一组居于复制的服务器启动虚拟 ip,除此以外,它还有实现数据备份、节点之间从新同步功能的脚本。

MySQL 自己没有提供 replication failover 的解决方案,经过 MMM 方案能实现服务器的故障转移,从而实现 mysql 的高可用。

此方案特色:

一、安全、稳定性较高,可扩展性好

二、 对服务器数量要求至少三台及以上

三、 对双主(主从复制性要求较高)

四、 一样可实现读写分离

欢迎你们关注Java架构微信公众号

感谢订阅!这里,你将学习到Java最新高级Java技术。

回复:“阿里手册”免费下载阿里巴巴开发手册!

回复:“架构学习”了解最新知识!

【精选面试题】回复“面试”获得各大互联网公司精选面试!

【JAVA架构资料】回复“架构资料”便可获取!

【双十一架构高清体系图】回复“架构图”便可获取!

【经典书籍】回复“书籍”便可获取!

相关文章
相关标签/搜索