开发者社区> 问答> 正文

微服务怎么实现事务管理的?

微服务怎么实现事务管理的?

展开
收起
OSC开源社区 2024-05-14 15:19:18 16 0
1 条回答
写回答
取消 提交回答
  • 其实微服务的事务就是分布式事务,刚性事务和柔性事务。
    刚性事务是指严格遵循ACID原则的事务, 例如单机环境下的数据库事务。
    柔性事务是指遵循BASE理论的事务, 通常用在分布式环境中, 常见的实现方式有: 两阶段提交(2PC), TCC补偿型提交, 基于消息的异步确保型, 最大努力通知型.。

    分布式事务的各种实现方式:

    1.如果业务场景需要强一致性, 那么尽量避免将它们放在不同服务中, 也就是尽量使用本地事务, 避免使用强一致性的分布式事务.
    2.如果业务场景能够接受最终一致性, 那么最好是使用基于消息的最终一致性的方案(异步确保型)来解决.
    3.如果业务场景需要强一致性, 并且只能够进行分布式服务部署, 那么最好是使用TCC方案而不是2PC方案来解决.
    
    2024-05-24 09:13:48
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
微服务治理技术白皮书 立即下载
微服务与Serverless 立即下载
EDAS4.0 助力企业一站实现微服务架构转型与 K8s 容器化升级 立即下载