Spring Cloud 微服务开发:入门、进阶与源码剖析 —— 14.1 分布式事务概述
2020-06-29 04:15
330 查看
14.1 分布式事务概述
在构建微服务的过程中,不管是使用什么框架、组件来构建,都绕不开一个问题,跨服务的业务操作如何保持数据一致性。
14.1.1 什么是分布式事务?
首先,设想一个传统的单体应用,无论多少内部调用,最后终归是在同一个数据库上进行操作来完成一向业务操作,如图14-1:
随着业务量的发展,业务需求和架构发生了巨大的变化,整体架构由原来的单体应用逐渐拆分成为了微服务,原来的3个服务被从一个单体架构上拆开了,成为了3个独立的服务,分别使用独立的数据源,也不在之前共享同一个数据源了,具体的业务将由三个服务的调用来完成,如图14-2:
此时,每一个服务的内部数据一致性仍然有本地事务来保证。但是面对整个业务流程上的事务应该如何保证呢?这就是在微服务架构下面临的挑战,如何保证在微服务中的数据一致性。
14.1.2 事务的四大特性ACID
说到事务就绕不开ACID,那么什么是ACID呢?ACID其实是四个字母的缩写,Atomicity、Consistency、Isolation、Dur
相关文章推荐
- Spring Cloud 微服务开发:入门、进阶与源码剖析 —— 10.1 Spring Cloud 全链路监控概述
- Spring Cloud 微服务开发:入门、进阶与源码剖析 —— 8.1 Spring Cloud Config 概述
- Spring Cloud 微服务开发:入门、进阶与源码剖析 —— 11.1 Spring Cloud Alibaba Nacos 概述
- Spring Cloud 微服务开发:入门、进阶与源码剖析 —— 14.2 Spring Cloud Alibaba Seata 概述
- Spring Cloud 微服务开发:入门、进阶与源码剖析 —— 9.1 Spring Cloud Gateway 概述
- Spring Cloud 微服务开发:入门、进阶与源码剖析 —— 通篇概述
- Spring Cloud 微服务开发:入门、进阶与源码剖析 —— 11.2 Nacos 服务发现入门实战
- Spring Cloud 微服务开发:入门、进阶与源码剖析 —— 9.7 Spring Cloud Gateway 动态路由
- Spring Cloud 微服务开发:入门、进阶与源码剖析 —— 7.4 本章小结
- Spring Cloud 微服务开发:入门、进阶与源码剖析 —— 14.4 本章小结
- Spring Cloud 微服务开发:入门、进阶与源码剖析 —— 9.6 Spring Cloud Gateway 全局过滤器
- Spring Cloud 微服务开发:入门、进阶与源码剖析 —— 7.3 常用配置
- Spring Cloud 微服务开发:入门、进阶与源码剖析 —— 10.6 本章小结
- Spring Cloud 微服务开发:入门、进阶与源码剖析 —— 11.4 Nacos进阶
- Spring Cloud 微服务开发:入门、进阶与源码剖析 —— 9.5 Spring Cloud Gateway 过滤器工厂
- Spring Cloud 微服务开发:入门、进阶与源码剖析 —— 10.5 Spring Cloud 与 Pinpoint
- Spring Cloud 微服务开发:入门、进阶与源码剖析 —— 11.3 Nacos 服务配置入门实战
- Spring Cloud 微服务开发:入门、进阶与源码剖析 —— 9.4 Spring Cloud Gateway 路由断言工厂
- Spring Cloud 微服务开发:入门、进阶与源码剖析 —— 7.2 技术实战
- Spring Cloud 微服务开发:入门、进阶与源码剖析 —— 9.3 Spring Cloud Gateway 路由配置转发