前言

在上一篇中,我们大致讲述了TCC事务的来源以及执行原理,并使用seata提供的解决方案完成了一个简单案例的整合与代码演示,本篇我们将采用Hmily的方式实现TCC事务的解决方案与演示

业务描述

有一个银行转账的场景,用户A需要向用户B转1块钱,如果大家使用的是同一个数据库,就不存在分布式事务的问题,现实中大家都各自使用自己的库,就产生了分布式事务

可以理解为,两个账户分别在不同的银行(用户A在bank1、用户B在bank2),bank1、bank2是两个微服务。交易过程是,用户A给 用户B转账指定金额

对于上述交易步骤,要么一起成功,要么一起失败,必须是一个整体性事务

环境准备

  • 数据库:MySQL-5.7.25
  • 微服务:spring-boot-2.1.3
  • Hmily:hmily-springcloud.2.0.6-RELEASE

微服务及数据库的关系 :

  • transfer/transfer-bank1 银行1,操作用户A账户, 连接数据库bank1
  • trans

基于Hmily实现TCC分布式事务解决方案相关推荐

  1. 基于消息队列的分布式事务解决方案

    前两天发了工资,第一反应是想着要给远方的女朋友一点惊喜!于是打开了平安银行的APP给女朋友转点钱!填写上对方招商银行卡的卡号.开户名,一键转账!搞定!在我点击的那瞬间,就收到了app的账户变动的提醒, ...

  2. kafka实现分布式事务解决方案

    分布式事务 概念: 分布式事务就是指事务的参与者.支持事务的服务器.资源服务器以及事务管理器分别位于不同的分布式系统的不同节点之上.以上是百度百科的解释,简单的说,就是一次大的操作由不同的小操作组成, ...

  3. 《深入理解分布式事务》第六章 最终一致性分布式事务解决方案

    <深入理解分布式事务>第六章 最终一致性分布式事务解决方案 文章目录 <深入理解分布式事务>第六章 最终一致性分布式事务解决方案 一.最终一致性分布式事务概述 1.典型方案 2 ...

  4. 分布式事务解决方案和原理

    分布式事务解决方案和原理 一. 背景: 我们知道, 在以前的 all-in-one 的项目开发模式下, 所有事务问题都是本地事务问题, 基本上利用mysql的优化方案和java提供的API, 可以解决 ...

  5. 分布式事务专题(三):分布式事务解决方案之2PC(两阶段提交)

    目录: 基础概念 分布式事务理论 分布式事务解决方案之2pc(本章) 分布式事务解决方案之TCC 分布式事务解决方案之可靠消息最终一致性 分布式事务解决方案之最大努力通知 分布式事务综合案例分析 3. ...

  6. 分布式事务解决方案:2PC,TCC以及基于消息的最终一致性

    各种形态的分布式事务 分布式事务有多种主流形态,包括:基于消息实现的分布式事务 基于补偿实现的分布式事务 基于TCC实现的分布式事务 基于SAGA实现的分布式事务 基于2PC实现的分布式事务 这些形态 ...

  7. 分布式事务TCC方案——Hmily金融级柔性分布式事务解决方案介绍

    关于TCC的理论部分请参考:分布式事务基础理论--TCC 概述 目前市面上的TCC框架众多(都是国内的呢): 框架名称 GitHub地址 tcc-transaction https://github. ...

  8. 分布式事务专题(四):分布式事务解决方案之TCC

    目录: 基础概念 分布式事务理论 分布式事务解决方案之2pc 分布式事务解决方案之TCC(本章) 分布式事务解决方案之可靠消息最终一致性 分布式事务解决方案之最大努力通知 分布式事务综合案例分析 4. ...

  9. Spring Boot之基于Dubbo和Seata的分布式事务解决方案

    转载自 Spring Boot之基于Dubbo和Seata的分布式事务解决方案 1. 分布式事务初探 一般来说,目前市面上的数据库都支持本地事务,也就是在你的应用程序中,在一个数据库连接下的操作,可以 ...

最新文章

  1. 网页分析利器:IEDevToolBar
  2. gamma分布_轻松理解gamma分布
  3. KVM 网络虚拟化基础 - 每天5分钟玩转 OpenStack(9)
  4. 【HDOJ】4579 Random Walk
  5. MySQL 行锁功过:怎么减少行锁对性能的影响
  6. 神经网络调参训练集噪音比例对网络性能的影响
  7. java3d 上色_Unity 着色过程
  8. ipad UISplitViewController 导航视图控制器标题设置
  9. TotoiseSVN的上手教程
  10. 应用内购买(IAP)各类型在服务端的验证规则
  11. 1.SpringMVC 概述
  12. 【渝粤教育】电大中专工程图学基础_1作业 题库
  13. 夜场票为何一票难求?故宫院长在彩排现场解答观众
  14. Java String常用方法
  15. linux ssh权限设置,linux 让ssh只允许指定的用户登录的权限设置
  16. android获取本地连接ip地址,参照第二步将本地连接改成自动获取IP地址即可
  17. 经典文学之三:鲁迅·故乡
  18. 10个超漂亮的CSS 3D特效
  19. android个人开发者广告平台
  20. 团建游戏----气球大赛

热门文章

  1. 摘抄:微软 Dynamics AX 学习步骤
  2. S2SH 第一次整合的经历
  3. 手动实现bind函数(附MDN提供的Polyfill方案解析)
  4. The Distribution File System
  5. draggable columns vs copy column name in phpMyAdmin
  6. python制作窗口界面_python GUI库图形界面开发之PyQt5窗口背景与不规则窗口实例
  7. kubernetes k8s一文入门
  8. Lucene 与 Elastic
  9. Java定时任务调度工具详解之Timer篇
  10. 在线HTML编辑器 KindEditor