动态数据源演示:基于事务的读写分离

时间:2021-01-30 02:46:40
【文件属性】:
文件名称:动态数据源演示:基于事务的读写分离
文件大小:65KB
文件格式:ZIP
更新时间:2021-01-30 02:46:40
database spring spring-boot dynamic transaction 应用层读写分离的改进 背景 数据库读写分离是先进的Web架构不可替代的一环,其主要提升在于: 主从职能单一,主写从读,可以极大程度地减轻X锁和S锁的竞争,并且可以进行针对性调优 请求分流,减少主库压力 当读成为DB紧张时,很容易进行水平扩展 增加冗余,实现高可用,出现故障后可快速恢复,仅丢失少量数据或不丢失数据 实现方式 读写分离首先需要DB实例的支持,配置主库,从库以及主从同步策略,此步骤一般到OP即可。实例放置完毕后,我们就可以开发相应模块,以实现真正的读写分离。 业界的实现方式一般分为两种: DB中间件和应用层的识别分离,两者相互独立的优缺点,详情见纳入: DB中间件 优点:对于应用透明;不限语言缺点:专人部署+维护;保证HA,LB;一般只支持MySQL 应用层读写分离 优点:开发简单,团队内部可以自行消化;基于JDBC驱动或框架,理论支持任意类型的DB缺点:通用性差,各应用需要自己实现;手动指定数据源 用不用DB中间件需要考虑实际情况,如数据体量和有没有人维护等等,这里讲的是应用层读写分离。 当前方案 通过自定义注释解@DataSourceRoute ,手动声明当前方法操作的数
【文件预览】:
dynamic-data-source-demo-master
----Changelog.md(425B)
----pom.xml(7KB)
----mvnw(7KB)
----LICENSE(11KB)
----src()
--------test()
--------main()
----.gitignore(3KB)
----.mvn()
--------wrapper()
----README.md(9KB)
----mvnw.cmd(5KB)
----Future.md(78B)

网友评论