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

栏目: 软件资讯 · 发布时间: 3年前

内容简介:dynamic-datasource是一款极其简单的基于spring-boot的多数据源组件,可以方便快速的让你的系统支持多数据源。 https://dynamic-datasource.com/ 官网 并且对各种第三方提供了支持,且拥有极高的扩展性。 但基于a...

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事务。

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

编写可读代码的艺术

编写可读代码的艺术

Boswell, D.、Foucher, T. / 尹哲、郑秀雯 / 机械工业出版社 / 2012-7-10 / 59.00元

细节决定成败,思路清晰、言简意赅的代码让程序员一目了然;而格式凌乱、拖沓冗长的代码让程序员一头雾水。除了可以正确运行以外,优秀的代码必须具备良好的可读性,编写的代码要使其他人能在最短的时间内理解才行。本书旨在强调代码对人的友好性和可读性。 本书关注编码的细节,总结了很多提高代码可读性的小技巧,看似都微不足道,但是对于整个软件系统的开发而言,它们与宏观的架构决策、设计思想、指导原则同样重要。编......一起来看看 《编写可读代码的艺术》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具