浅谈分布式事务及解决方案( 四 )


6. 业务数据并发访问控制;
TCC 服务的一阶段 Try 操作预留资源之后,在二阶段操作执行之前,预留的资源都不会被释放;如果此时其他分布式事务修改这些业务资源 , 会出现分布式事务的并发问题;
用户在实现 TCC 服务时,需要考虑业务数据的并发控制,尽量将逻辑锁粒度降到最低,以最大限度的提高分布式事务的并发性;
6 HmilyHmily (How much I love you)
高性能分布式事务 tcc 开源框架 。基于 JAVA 语言来开发(JDK1.8),支持 dubbo,springcloud,motan 等 rpc 框架进行分布式事务 。
框架特性

  • 支持嵌套事务 (Nested transaction support).
  • 采用 disruptor 框架进行事务日志的异步读写,与 RPC 框架的性能毫无差别 。
  • 支持 SpringBoot-starter 项目启动 , 使用简单 。
  • RPC 框架支持 : dubbo,motan,springcloud 。
  • 本地事务存储支持 : redis,mongodb,zookeeper,file,MySQL 。
  • 事务日志序列化支持 :java,hessian,kryo,protostuff 。
  • 采用 Aspect AOP 切面思想与 Spring 无缝集成,天然支持集群 。
  • 内置经典的分布式事务场景 demo 工程,并有 swagger-ui 可视化界面可以快速体验 。
6.1 Hmily 原理及流程图
原理图:
浅谈分布式事务及解决方案

文章插图
流程图:
浅谈分布式事务及解决方案

文章插图
 
7 参考文献
  • https://dromara.org/website/zh-cn/docs/hmily/index.html
  • https://houbb.Github.io/2018/10/30/hmily
  • https://developer.aliyun.com/article/609854
  • https://blog.csdn.NET/bjweimengshu/article/detAIls/86698036
  • https://blog.csdn.net/u014296316/article/details/90185589
作者:京东物流 宋乐
来源:京东云开发者社区 自猿其说 Tech 转载请注明来源

【浅谈分布式事务及解决方案】


推荐阅读