Home
Sign Up
Sign In
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
V2EX
›
程序员
关于事务里面有无法回滚的操作的问题
1
deku9
·
Feb 23, 2024
· 1972 views
This topic created in 846 days ago, the information mentioned may be changed or developed.
如果一个事务里面有比如说一些不支持事务的操作,比如 rpc 调用,es ,文件写入等不能回滚的操作。如果数据库写入失败要回滚,但是这些操作回滚不了怎么办?
事务
操作
RPC
滚
4 replies
•
2024-02-24 10:02:31 +08:00
1
vczyh
Feb 23, 2024
一般来说一个事务只操作数据库,完成之后再操作其他的,为了防止后者失败,可以异步检查是否操作成功,失败的话补偿。
2
lifei6671
Feb 23, 2024
要么引入分布式事务。要么做最终数据一致性校验就行。根据业务的不同,看看是先入库再调用 RPC ,还是先调用 RPC 再入库。只要做好幂等性,上下游重试即可。
3
deku9
OP
Feb 23, 2024
@
lifei6671
大佬,我这里应该不涉及分布式事务吧,我的意思是其他操作不支持事务。然后如果我想尽量保障实时的一致性有什么好办法吗。一般做重试就行嘛,还是说这种场景一定要最终一致性校验
4
lifei6671
Feb 24, 2024
@
deku9
重试+最终一致性就行。目前我们的业务也是这么做的。
About
·
Help
·
Advertise
·
Blog
·
API
·
FAQ
·
Solana
·
2564 Online
Highest 6679
·
Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 37ms ·
UTC 06:19
·
PVG 14:19
·
LAX 23:19
·
JFK 02:19
♥ Do have faith in what you're doing.
❯