MySql数据库实现分布式的主从结构

时间:2022-03-15 06:07:48

 

最近学习了关于使用MySql数据的实现主动结构的原理,在以前的并发访问低的场景一下,一般一台性能高的服务器作为一个MySql数据,就可以满足业务的增删改查场景,但是随着网络用户的增加

当出现高并发,高QPS的情况下,一台MySql就很难支撑这种场景了,根据现在的分布式处理架构,处理在使用Redis这种高效的缓存数据库外,其实也可以针对数据库端进行分布式处理,也就是原来

和Redis相同,使用分布式主从架构,通过Master 和 Slave 实现读写分析,数据采用主从复制的原理,这种采用读写分析,同时读的Slave机器可以多台配置的架构,极大了增加的后台的稳定性和满足

高并发的情景;

 

下面进行原理分析:

MySql数据库实现分布式的主从结构

 

配置的简要过程说明:

Mysql的配置文件【在Spring中进行设置】

MySql数据库实现分布式的主从结构

数据源的配置:

Master数据源:

MySql数据库实现分布式的主从结构

Slave数据源:

 MySql数据库实现分布式的主从结构

 

源代码的可以采用基于自定义注解的方式实现:

1、使用一个选择类,用来配置选择方式;

MySql数据库实现分布式的主从结构

系统的配置需要采用一个路由配置:

MySql数据库实现分布式的主从结构

 

 在spring中注册数据源【通过master和slave关键字匹配对应的数据源】:

MySql数据库实现分布式的主从结构

采用注解的方式实现在Mapper接口上通过注解就可以实现自动匹配,效果如下:

MySql数据库实现分布式的主从结构

 

 自定义注解的实现:使用Aspectj的代理模式 AOP原理:

MySql数据库实现分布式的主从结构

 

把注解匹配到具体实现:

MySql数据库实现分布式的主从结构

 

 Spring中配置注册:

MySql数据库实现分布式的主从结构

配置完成!