--- tags: [microservice, data-consistency] create time: 2026-04-29 12:03 --- # 数据一致性 ## 概述 微服务的核心设计原则是 **"每个服务拥有独立数据库"**,这带来了分布式事务和数据一致性的经典难题。本文梳理主要解决方案及其取舍。 ## 知识体系 ```mermaid graph LR A["数据库拆分"] --> B["分布式事务"] B --> C["ID 生成"] style A fill:#e3f2fd style B fill:#fff3e0 style C fill:#e8f5e9 ``` | # | 主题 | 核心问题 | |---|------|----------| | 1 | [[03-数据一致性/数据库拆分/README]] | 每个服务独立 DB,表大了怎么拆分?跨库查询怎么做? | | 2 | [[03-数据一致性/分布式事务/README]] | 本地事务 + MQ、Saga、TCC,哪个方案最合适? | | 3 | [[03-数据一致性/ID生成/README]] | 没有自增主键了,全局唯一 ID 怎么生成? | ### 学习建议 > [!tip] 学习路径 > 先理解"为什么不能共享数据库",再学分库分表的策略,最后深入分布式事务方案选型。ID 生成是最轻量的话题,可以随时了解。 ### 关联笔记 - [[01-基础概念]] — 微服务拆分与独立数据库原则 - [[02-服务治理]] — 服务调用链路上的超时、重试、熔断 - [[hzh/MS/README.md]] — 完整微服务知识索引