分库分表(7)--- SpringBoot+ShardingSphere实现分库分表 + 读写分离
有关分库分表前面写了六篇博客:
2、分库分表(2) --- ShardingSphere(理论)
3、分库分表(3) ---SpringBoot + ShardingSphere实现读写分离
4、分库分表(4) ---SpringBoot + ShardingSphere 实现分表
5、分库分表(5) ---SpringBoot + ShardingSphere 实现分库分表
6、分库分表(6)--- SpringBoot+ShardingSphere实现分表+ 读写分离
这篇博客通过ShardingSphere实现分库分表 + 读写分离
,并在文章最下方附上项目Github地址
。
一、项目概述
1、技术架构
项目总体技术选型
SpringBoot2.0.6 + shardingsphere4.0.0-RC1 + Maven3.5.4 + MySQL + lombok(插件)
2、项目说明
场景
在实际开发中,如果数据库压力大我们可以通过 分库分表 的基础上进行 读写分离,来减缓数据库压力。
3、数据库设计
分库
ms单库分库分为 ms0库 和 ms1库。
分表
tab_user单表分为tab_user0表 和 tab_user1表。
读写分离
数据写入ms0库 和 ms1库,数据读取 sl0库 和 sl1库。
如图
ms0 ---主库
ms1 ---主库
sl0 ---从库
sl1 ---从库
说明
初始数据的时候,这边只有 sl0从库 我插入了一条数据。那是因为我们这个项目中Mysql服务器并没有实现主从部署,这四个库都在同一服务器上,所以
做不到主数据库数据自动同步到从数据库。所以这里在从数据库建一条数据。等下验证的时候,我们只需验证数据是否存入