hmily 学习笔记
Hmily 是一个高性能分布式事务框架,开源于 2017 年,目前有 2800 个 Star,基于 TCC 原理实现,使用 Java 语言开发(JDK1.8+),天然支持 Dubbo、SpringCloud、Motan 等微服务框架的分布式事务。
hmily 功能
支持嵌套事务(Nested transaction support)等复杂场景。
支持 RPC 事务恢复,超时异常恢复等,具有高稳定性。
基于异步 Confirm 和 Cancel 设计,相比其他方式具有更高性能。
基于 SPI 和 API 机制设计,定制性强,具有高扩展性。
本地事务的多种存储支持 : redis/mongodb/zookeeper/file/mysql。
事务日志的多种序列化支持 :java/hessian/kryo/protostuff。
基于高性能组件 disruptor 的异步日志性能良好。
实现了 SpringBoot-Starter,开箱即用,集成方便。
采用 Aspect AOP 切面思想与 Spring 无缝集成,天然支持集群。
实现了基于 VUE 的 UI 界面,方便监控和管理。
hmily 主要角色和步骤:
MainService:事务发起者(业务服务)。
TxManage:事务协调者。
ActorService:事务参与者(多个业务服务)。
Try:事务执行。
Confirm:事务确认。
Cancel:事务回滚。
Redo 日志 :可以选择任意一种进行存储。
关于 Hmily
Hmily 是柔性分布式事务解决方案,提供了TCC
与 TAC
模式。
它以零侵入以及快速集成方式能够方便的被业务进行整合。
在性能上,日志存储异步(可选)以及使用异步执行的方式,不损耗业务方法方法。
版权声明: 本文为 InfoQ 作者【风翱】的原创文章。
原文链接:【http://xie.infoq.cn/article/5941686e71af2be895012ac9a】。文章转载请联系作者。
评论