Hmily Introduction

Edit
Update time: 2021-09-16

What’s Hmily?

Hmily is a high-performance, zero penetration, financial-level distributed transactions solution. At present, it mainly provides support for flexible transactions, including TCC, TAC (in which, it will automatically generate rollback SQL) schemes, and XA and more schemes will be supported in the future.

Features

  • High reliability : It supports abnormal transaction rollback and transaction overtime abnormal recovery to prevent transaction suspension in distributed scenarios.

  • Ease of use : It provides zero penetration Spring-Boot and Spring-Namespace schemes to integrate with business systems quickly.

  • High performance : Decentralized design, fully integrated with business systems, and naturally supports cluster deployment.

  • Observability : Performance monitoring of multiple metrics will be collected by Metrics, performance metrics is able to display in admin management system.

  • Multiple RPC Framework support : It supports well-known RPC frameworks such as Dubbo, SpringCloud, Motan, brpc, tars, etc.

  • Multiple log store medium support : It supports many mediums as log store, such as mysql, oracle, mongodb, redis, zookeeper, etc.

  • Complex business scene : It supports transaction around nested RPC calls.

Requirements

  • The JDK version must be JDK8 or later.

  • In TCC mode, you must use a RPC framework, such as: Dubbo, SpringCloud, Motan

  • In TAC mode, you must use relational databases, such as: mysql, oracle, sqlsever

TCC Mode

When using the TCC mode, you should provide three methods: try, confirm, and cancel according to your business requirements, and the confirm and cancel methods should be implemented by yourselves, the framework is only responsible for calling them to achieve transaction consistency.

TAC Mode

When using the TAC mode, you must use a relational database for business operations, and the framework will automatically generate a rollback SQL. When the business is abnormal, the rollback SQL will be executed to achieve transaction consistency

About

Hmily is a flexible distributed transaction solution that provides TCC and TAC modes.

It can be easily integrated by business with zero intrusion and rapid integration.

In terms of performance, log storage is asynchronous (optional) and uses asynchronous execution, without sacrificing business methods.

It was previously developed by myself personally, and it is currently restarted at JD Digital Technique Group, and it will become JD Digital Technique Group’s distributed transaction solution in the future.

Support

  • If you have any questions, please join the QQ group for discussion

  • WeChat public account