分布式事务中间件概述
坤坤 Lv2

一个完整的业务往往需要调用多个子业务或服务,随着业务的不断增多,涉及的服务及数据也越来越多,越来越复杂。传统的系统难以支撑,于是出现了应用和数据库等的分布式系统。

在传统系统中,数据的一致性有数据库本身的事务机制保证。但在分布式系统中,一个完整的业务往往涉及到多个事务资源,或者会跨多个进程进行远程调用,此时数据库本身的事务机制已无法保证数据的一致性,分布式事务应运而生。

分布式事务问题的典型场景

跨事务资源

当应用进行分库以后,一次完整的业务访问的数据可能位于多个数据库中,但传统的数据库事务只能保证自身的事务。此时多个数据库之间的事务无法保证一致。

跨事务资源

跨服务

分布式系统的一次完整的业务调用可能会跨多个进程,多个进程内的本地事务无法保证一致。

跨服务

DTF(Distributed-Transaction-Factory)简介

DTF 是一款用于解决上述分布式环境下的数据一致性问题分布式事务中间件。
DTF 的架构如下所示:
跨服务

  • DTF 服务端:即事务协调器。负责分布式事务的推进,管理事务生命周期;
  • DTF 客户端:即事务发起者。通过事务协调器,开启、提交、回滚分布式事务。同时包含部分资源管理器组 件,负责管理和控制资源,与DTF服务器进行交互。
  • Post title:分布式事务中间件概述
  • Post author:坤坤
  • Create time:2021-05-02 22:00:38
  • Post link:https://is908.github.io/2021/05/02/dtf-outline/
  • Copyright Notice:All articles in this blog are licensed under BY-NC-SA unless stating additionally.