苞米豆-多数据源 3.3.0 重磅更新:本地多数据源事务方案

dynamic-datasource是一款极其简单的基于spring-boot的多数据源组件,可以方便快速的让你的系统支持多数据源。

https://dynamic-datasource.com/
官网

并且对各种第三方提供了支持,且拥有极高的扩展性。

但基于aop的方案始终有个问题难以解决,就是事务问题。

本项目作者常常收到以下问题。

  1. 为什么我加了spring事务注解,切换数据源失败了?
  2. 我了解涉及了分布式事务了,知道项目可以很方便集成seata。但我场景简单,有没有不依赖第三方的方案?

自从3.3.0开始,由seata的核心贡献者https://github.com/a364176773 贡献了基于connection代理的方案。

初版肯定会有一些问题,建议大家在本地仔细测试后再上生产,希望大家多提意见。

https://dynamic-datasource.com/guide/tx/Local.html
官网查看详细文档。

v3.3.0

  • feat:重要:本地多数据源事物支持。 @FUNKYE
  • feat:底层数据源保存方式修改为ConcurrentHashMap。 @刘尚
  • revert:重构底层Creator的创建规则。@刘尚
  • feat:添加同名数据源覆盖老数据源。@刘尚
  • feat:支持部分从接口继承DS的场景。@CQJames
  • fix:修复Druid防火墙一个参数设置错误。@mrf
  • fix:修复极端情况下的设置数据源异常处理。@happier233

特性

  1. 支持  数据源分组
     ,适用于多种场景 纯粹多库 读写分离 一主多从 混合模式。
  2. 支持数据库敏感配置信息  加密
     ENC()。
  3. 支持每个数据库独立初始化表结构schema和数据库database。
  4. 支持  自定义注解
     ,需继承DS(3.2.0+)。
  5. 提供对Druid,Mybatis-Plus,P6sy,Jndi的快速集成。
  6. 简化Druid和HikariCp配置,提供  全局参数配置
     。配置一次,全局通用。
  7. 提供  自定义数据源来源
     方案。
  8. 提供项目启动后  动态增加移除数据源
     方案。
  9. 提供Mybatis环境下的  纯读写分离
     方案。
  10. 提供使用  spel动态参数
     解析数据源方案。内置spel,session,header,支持自定义。
  11. 支持  多层数据源嵌套切换
     。(ServiceA >>> ServiceB >>> ServiceC)。
  12. 提供对shiro,sharding-jdbc,quartz等第三方库集成的方案,注意事项和示例。
  13. 提供  基于seata的分布式事务方案。
     附:不支持原生spring事务。
  14. 提供  本地多数据源事务方案。
     附:不支持原生spring事务。
开源中国
我还没有学会写个人说明!
上一篇

工信部:今年新增58万5G基站 所有地市都有5G网络覆盖

下一篇

《奥特曼》55周年官方纪念特别宣传片 日本特摄界金字塔

你也可能喜欢

评论已经被关闭。

插入图片