当前位置:网站首页>@Transactional 注解导致跨库查询失效的问题
@Transactional 注解导致跨库查询失效的问题
2022-07-05 03:35:00 【Java Punk】
相关文章:
@Transactional 注解的失效场景,这个问题见过太多的人栽跟头,一篇刨根问底,让面试官都闭嘴_Java Punk的博客-CSDN博客通过本篇的学习,你将掌握大概【6种】@Transactional 的失效场景,并且能够明白各自的失效原理,把源码刨到祖坟上。https://blog.csdn.net/weixin_44259720/article/details/110181822?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522165655820616782395348213%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=165655820616782395348213&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~rank_v31_ecpm-4-110181822-null-null.nonecase&utm_term=%40Transactional&spm=1018.2226.3001.4450@Transactional 注解参数详解,以及注解的使用特性说明(典藏版)_Java Punk的博客-CSDN博客_transactional注解参数通过本篇学习,你将加深对@Transactional 注解以及所有的属性的理解,还可以学习到@Transactional 注解常见的失效场景【文章最后】。
https://blog.csdn.net/weixin_44259720/article/details/110138972?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522165655820616782395348213%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=165655820616782395348213&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~rank_v31_ecpm-1-110138972-null-null.nonecase&utm_term=%40Transactional&spm=1018.2226.3001.4450如果有需要,上面的相关文章请拿走不谢。
背景
开发中遇到的,记录一下问题。
建议在开发中一个服务连接一个数据库,来实现业务型的微服务配置,在RestFull层进行服务的业务融合。但是,前几天出现了一个特例,需要在一个服务中关联多个数据库来完成查询(因为好几个数据库本身还没有自己的服务,没有对外HSF接口)。
在这样的配置下,难免出现一个接口中查询多库,并且需要修改数据的情况。
问题
由于在接口上增加了@Transactional 注解,本意是希望实现事务管理,实际上并没有实现,反而造成了数据库切换时候失败了(master - > slave 失败),最终导致数据查询失败。
解决办法
需要使用跨库解决方案,建议跨库事务中间件,消息中间表,或者利用MQ实现最大努力通知消息,实现数据的最终一致性。
边栏推荐
- Nmap user manual learning records
- The perfect car for successful people: BMW X7! Superior performance, excellent comfort and safety
- Anchor free series network yolox source code line by line explanation Part 2 (a total of 10, ensure to explain line by line, after reading, you can change the network at will, not just as a participan
- JWT漏洞复现
- Necessary fonts for designers
- Talk about the SQL server version of DTM sub transaction barrier function
- Some enterprise interview questions of unity interview
- [wp]bmzclub几道题的writeup
- Asemi rectifier bridge 2w10 parameters, 2w10 specifications, 2w10 characteristics
- Smart pointer shared_ PTR and weak_ Difference of PTR
猜你喜欢
Thread Basics
Share the newly released web application development framework based on blazor Technology
Yyds dry goods inventory embedded matrix
[2022 repair version] community scanning code into group activity code to drain the complete operation source code / connect the contract free payment interface / promote the normal binding of subordi
v-if VS v-show 2.0
grandMA2 onPC 3.1.2.5的DMX参数摸索
[web Audit - source code disclosure] obtain source code methods and use tools
[groovy] string (string injection function | asBoolean | execute | minus)
[C language] address book - dynamic and static implementation
Clickhouse物化视图
随机推荐
De debugging (set the main thread as hidden debugging to destroy the debugging Channel & debugger detection)
Anti debugging (basic principles of debugger Design & NT NP and other anti debugging principles)
ABP vNext microservice architecture detailed tutorial - distributed permission framework (Part 2)
Daily question 2 12
v-if VS v-show 2.0
New interesting test applet source code_ Test available
[2022 repair version] community scanning code into group activity code to drain the complete operation source code / connect the contract free payment interface / promote the normal binding of subordi
In MySQL Association query, the foreign key is null. What if the data cannot be found?
Huawei MPLS experiment
KVM virtualization
There is a question about whether the parallelism can be set for Flink SQL CDC. If the parallelism is greater than 1, will there be a sequence problem?
Anchor free series network yolox source code line by line explanation four (a total of ten, ensure line by line explanation, after reading, you can change the network at will, not just as a participan
[wp]bmzclub几道题的writeup
请问一下我的请求是条件更新,但在buffer中就被拦截了,这种情况我只能每次去flush缓存么?
SQL performance optimization skills
Thread Basics
SQL performance optimization skills
Redis source code analysis: redis cluster
[groovy] string (string injection function | asBoolean | execute | minus)
IPv6 experiment