- 博客(5)
- 资源 (4)
- 收藏
- 关注
原创 Hmily 源码解析(二)—— Hmily事务工作流程
Hmily 源码解析(二)前言这一篇不想谈论Hmily源码的技术实现,而是想在过了一遍hmily的实现后把hmily的工作思路单独地整理出来再进行一次总结。看看能不能进一步有所得。以hmily-demo-springcloud为例,它的实现思路如下。Hmily事务工作流程首先它是基于切面编程来实现分布式事务的操作,及通过日志记录TCC事务的信息以保证最终一致性。前...
2019-05-14 00:14:31 2907 4
原创 Hmily 源码解析(二)—— 调用微服务
由于篇幅过长,将该模块单独拎出一节,接上文Hmily 源码解析(二)—— 执行主体方法上文我们把主体方法的执行及Feign的相关配置讲解了,知道在调用微服务时把对应的HmilyTransactionContext实例以“HMILY_TRANSACTION_CONTEXT”为key作为请求参数一同发送过来,及调用微服务成功之后会把调用接口的方法(有@Hmily注解的)封装为HmilyPa...
2019-05-12 15:52:49 783 1
原创 Hmily 源码解析(二)—— 执行主体方法
Hmily 源码解析(二) 由于篇幅过长,我们把执行主体方法部分单独拎出,以方便阅读。前面我们执行完了Hmily切面的前置操作,现在要执行主体方法了首先第一步就是将Order实例存储到数据库中,这一步就是对order表执行了try操作,这是我们的第一个try操作第二步执行扣减库存操作,inventoryClient.decrease方法是fegin接口,且拥有@Hmily...
2019-05-12 01:00:49 767
原创 Hmily 源码解析(二)
TCC流程这篇我们按照try成功,confirm成功的流程来一步步看一下hmily究竟是如何实现这些功能的。首先我们要启动一下这四个微服务。* 接着我们访问hmily-demo-springcloud-order下的orderPay接口,count为1,amount为1随着程序的调用最终会调用到该方法makePayment,这个方法里面就是我们的分布式事务逻辑。我们可以看到一共有三...
2019-05-06 22:46:58 2266 1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人