项目场景:
- 场景说明:
多线程并发执行,每个线程执行过程中 需要两个步骤,第一个步骤从业务数据库中计算得分,第二步骤讲计算的得分存储到支撑库中。
- 组件说明
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>dynamic-datasource-spring-boot-starter</artifactId>
<version>3.1.0</version>
</dependency>
问题描述:
在多线程执行的过程中,每个线程执行过程中都会进行数据源的切换,在多线程执行过程中,有时候出现数据源切换不成功,造成查询数据库数据失败或者数据插入失败。原因分析:
目前猜猜数据源在多线程间是共享的解决方案:
更新组件版本<dependency>
<groupId>com.baomidou</groupId>
<artifactId>dynamic-datasource-spring-boot-starter</artifactId>
<version>3.3.2</version>
</dependency>