深度剖析分布式事务之 AT 与 XA 对比

2022-04-11
阅读 3 分钟
2.7k
AT 从原理上面看,与 XA 的设计有很多相近之处。XA 是数据库层面实现的二阶段提交, AT 则是应用/驱动层实现的二阶段提交。建议您了解了XA相关的知识后,来阅读这篇文章,这样能够更快更好的掌握 AT 的原理与设计。

kratos分布式事务实践

2022-03-30
阅读 3 分钟
5.6k
当我们需要跨服务保证数据一致性时,原先的数据库事务力不从心,无法将跨库、跨服务的多个操作放在一个事务中。这样的应用场景非常多,我们可以列举出很多:

消息最终一致性的架构革命

2022-01-12
阅读 5 分钟
2.9k
跨服务更新数据是应用开发常见的任务,如果一些关键数据对一致性的要求较高,而业务上也不需要支持回滚的话,那么通常就会采用本地消息表的方式来保证最终一致。许多公司在处理跨服务更新数据一致性问题时,都会先引入本地消息表,后续随着业务场景复杂化,再引入更多的事务模式

DTM发布1.8.4 支持零配置启动,brew一键安装

2022-01-05
阅读 2 分钟
2.6k
DTM发布了最新版本1.8.4,主要更新如下:零配置启动,对新人上手更加友好,不依赖docker、不依赖数据库,零依赖,零配置直接启动支持homebrew一键安装支持自定义子事务请求header支持HTTP/gRPC拦截器支持自定义服务端和SDK中使用的数据库表名零配置启动最新版本1.8.4,可以在这个页面下载相应平台(支持linux,Mac,wind...

每秒1w+分布式事务--dtm的Redis存储性能测试分析

2021-12-27
阅读 3 分钟
3k
之前dtm给出了Mysql作为存储引擎的性能测试报告,在一个普通配置的机器上,2.68w IOPS,4核8G机器上,能够支持大约每秒900+分布式事务,能够满足大部分公司的业务需求。

go-zero分布式事务实践

2021-12-20
阅读 3 分钟
9.6k
当我们需要跨服务保证数据一致性时,原先的数据库事务力不从心,无法将跨库、跨服务的多个操作放在一个事务中。这样的应用场景非常多,我们可以列举出很多:

深入剖析分布式事务一致性

2021-12-13
阅读 4 分钟
7k
分布式事务是用来解决跨数据库、跨服务更新数据一致性问题的。那么这里的一致性指的是什么,什么是强一致性,什么是弱一致性,与CAP理论中的一致性概念是一样的吗?本文将为您深入解答相关的问题。

分布式事务的这些常见用法都有坑,来看看正确姿势

2021-11-29
阅读 3 分钟
7.6k
随着微服务架构的流行,随之而来就必然遇到跨服务的分布式事务这个难题。分布式事务之所以难,主要是因为分布式系统中的各个节点都可能发生各种非预期的情况。本文先介绍分布式系统中的异常问题,然后介绍这些问题带给分布式事务的挑战,接下来指出现有各种常见用法的问题,最后给出正确的方案。

用Java轻松完成一个分布式事务TCC,自动处理空补偿、悬挂、幂等

2021-11-29
阅读 7 分钟
5.1k
什么是TCC,TCC是Try、Confirm、Cancel三个词语的缩写,最早是由 Pat Helland 于 2007 年发表的一篇名为《Life beyond Distributed Transactions:an Apostate’s Opinion》的论文提出。

深度剖析Saga分布式事务

2021-11-23
阅读 4 分钟
6.4k
saga是分布式事务领域里一个非常重要的事务模式,特别适合解决出行订票这类的长事务,本文将深度剖析saga事务的设计原理,以及在解决订票问题上的最佳实践

分布式事务框架dtm1.5.4发布,支持更友好的gRPC类型

2021-11-15
阅读 2 分钟
3.2k
更新日志更加友好的gRPC类型支持,输入输出支持任何类型添加例子启动时等待mysql,避免因mysql启动慢而退出新功能示例旧的proto文件示例: {代码...} 使用时需要进行转化 {代码...} 新的proto文件示例 {代码...} 使用时,直接是强类型,完全与dtm定义的branchInfo等无关 {代码...} 在新版本情况下,业务的gRPC接口,完全...

分布式事务框架dtm1.4.1发布,支持高级SAGA

2021-11-01
阅读 2 分钟
3.2k
更新日志支持并发SAGA支持SAGA超时回滚支持自定义重试间隔新功能示例 {代码...} 上述代码中EnableConcurrent开启SAGA各分支的并发执行,缩短整个SAGA事务的总耗时上述代码中的注释:AddBranchOrder(1, []int{0}),则可以添加事务分支间的依赖关系。例如这行注释的依赖关系为下标为1的分支,依赖下标为0的分支,只有等0完...

分布式事务框架dtm1.3.1发布,添加postgres支持

2021-10-18
阅读 1 分钟
3.2k
DTM是首款golang开发的跨语言分布式事务管理器,优雅的解决了幂等、空补偿、悬挂等分布式事务难题。提供了简单易用、高性能、易水平扩展的分布式事务解决方案。

用Node轻松完成一个分布式事务TCC,保姆级教程

2021-08-30
阅读 3 分钟
2.7k
什么是TCC,TCC是Try、Confirm、Cancel三个词语的缩写,最早是由 Pat Helland 于 2007 年发表的一篇名为《Life beyond Distributed Transactions:an Apostate’s Opinion》的论文提出。

分布式事务管理器dtm0.10.0发布 支持grpc

2021-08-29
阅读 1 分钟
4.2k
DTM是首款golang的开源分布式事务管理器,优雅的解决了幂等、空补偿、悬挂等分布式事务难题。提供了简单易用、高性能、易水平扩展的分布式事务解决方案。

如何选择最适合你的分布式事务方案

2021-08-06
阅读 3 分钟
9.6k
当我们采用服务/微服务架构,对业务进行分拆解耦后,原先在一个单体内,使用本地数据库保证ACID的数据修改,因为跨了多个服务,就不再适用了,就需要引入分布式事务来保证新的原子性。

用python轻松完成一个分布式事务TCC,保姆级教程

2021-07-24
阅读 5 分钟
5.9k
什么是分布式事务?银行跨行转账业务是一个典型分布式事务场景,假设A需要跨行转账给B,那么就涉及两个银行的数据,无法通过一个数据库的本地事务保证转账的ACID,只能够通过分布式事务来解决。

分布式事务实战--一个完整的XA是什么样的?

2021-07-13
阅读 3 分钟
4.4k
这种把多条语句作为一个整体进行操作的功能,被称为数据库事务。数据库事务可以确保该事务范围内的所有操作都可以全部成功或者全部失败。如果事务失败,那么效果就和没有执行这些SQL一样,不会对数据库数据有任何改动。

用Go轻松完成一个TCC分布式事务,保姆级教程

2021-07-12
阅读 4 分钟
10.3k
什么是TCC,TCC是Try、Confirm、Cancel三个词语的缩写,最早是由 Pat Helland 于 2007 年发表的一篇名为《Life beyond Distributed Transactions:an Apostate’s Opinion》的论文提出。

分布式事务最经典的七种解决方案

2021-07-09
阅读 8 分钟
67k
随着业务的快速发展、业务复杂度越来越高,几乎每个公司的系统都会从单体走向分布式,特别是转向微服务架构。随之而来就必然遇到分布式事务这个难题。

用Go轻松完成一个SAGA分布式事务,保姆级教程

2021-07-05
阅读 4 分钟
7.8k
银行跨行转账业务是一个典型分布式事务场景,假设A需要跨行转账给B,那么就涉及两个银行的数据,无法通过一个数据库的本地事务保证转账的ACID,只能够通过分布式事务来解决。