本节主要是介绍关于数据库读写分离部分,本框架主要使用了shardingsphere 框架进行读写分离,分库分表后续会进行介绍
内容如下
#1 为什么要用读写分离 #2 读写分离一般性方案 ##2.1 外置层proxy方案 ##2.2 代码层proxy方案 #3 shardingSphere 读写分离实现原理 #4 spring boot/spring cloud 集成shardingSphere
1 为什么要用读写分离
如果一个业务的数据读远远大于写的需求,那么创建多个多个读从库还是比较常用的选择,主要为了分离数据库压力,如果并没有太多高压力读需求,则不需要读写分离
2 读写分离一般性方案
2.1 外置层proxy方案
外置层proxy方案主要是指外部搭建一个代理服务,全权代理了数据库本身的连接,类似于nginx对web应用的代理一样,我们应用本身连接数据库的连接直接连接这个代理,而不是连接真是数据库,代理会根据配置的规则自动帮助请求进行读写分离或者分库分表,比如mycat
大致如下图