awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
dromara avatar

dromara/hmily

0
View on GitHub↗
4,172 stars·1,398 forks·Java·Apache-2.0·26 viewsdromara.org↗

Hmily

Hmily is a distributed transaction framework and data consistency manager designed to maintain state across multiple services. It operates as a coordinator that tracks transaction states across remote procedure calls to manage nested operations and ensure atomic completions.

The project implements the SAGA pattern to orchestrate long-running business processes through a sequence of local transactions and automated compensating actions. It distinguishes itself by automating the generation and execution of rollback scripts for relational databases to recover from business exceptions and restore data consistency.

The framework covers distributed transaction management using try-confirm-cancel patterns and provides a persistence layer for recording operation histories across relational and document databases. It also includes a management interface for transaction lifecycle monitoring to audit state transitions and observe system health.

Features

  • Compensating Transactions - Recover abnormal transaction states over time to prevent system suspension and ensure eventual consistency across all data stores.
  • SQL Rollback Generation - Automates the generation of inverse SQL statements to restore database consistency when business processes fail.
  • Distributed Transaction Coordinators - Coordinates global transaction lifecycles across heterogeneous data stores and remote procedure calls.
  • Transaction Identifier Propagation - Propagates unique transaction identifiers across RPC call chains to track nested operations and service relationships.
  • Distributed Transaction Recovery - Detect abnormal transaction states and trigger automated recovery processes to prevent business operations from remaining in a suspended state.
  • Transaction Recovery Logs - Implements a persistence layer for recording operational history and state transitions to facilitate recovery from system crashes.
  • Asynchronous Recovery Orchestration - Provides an orchestration system for the automated recovery of failed distributed transactions through asynchronous cleanup processes.
  • Data Synchronization and Consistency - Ensures data consistency across distributed environments by automating the generation and execution of rollback scripts.
  • Eventual Consistency Orchestrators - Automates the process of reaching eventual consistency using rollback scripts and recovery processes.
  • Distributed State Recovery - Detects abnormal transaction states and triggers automated recovery sequences to ensure eventual consistency in distributed systems.
  • Saga Coordinators - Implements a SAGA pattern coordinator to manage long-running business processes via local transactions and compensating actions.
  • Distributed Transaction Management - Coordinates global transactions across microservices to ensure that operations either complete fully or roll back entirely.
  • Try-Confirm-Cancel Protocols - Coordinates global transactions using the try-confirm-cancel pattern to ensure atomic completion across distributed services.
  • Frameworks - Implements a comprehensive framework for managing consistency using TCC patterns and automated rollback scripts.
  • Consistency Frameworks - Provides a toolkit specifically designed to maintain data integrity and synchronization across distributed microservices.
  • Nested Transactions - Tracks transaction contexts across multiple layers of RPC calls to manage nested sub-transactions and ensure atomicity.
  • Operation History Stores - Records operational history across relational and document databases to facilitate auditing and failure recovery.
  • RPC Frameworks - Integrates with various remote procedure call frameworks to synchronize transaction states across different service architectures.
  • Distributed Transaction Monitors - Provides a management interface for tracking the status, metrics, and operational health of distributed transactions.
  • Agnostic Integration Layers - Provides an abstraction layer that interfaces with various RPC frameworks to coordinate distributed transactions regardless of service architecture.

Star history

Star history chart for dromara/hmilyStar history chart for dromara/hmily

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Projects sharing features with Hmily

These projects share indexed features with Hmily. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • apache/incubator-seataapache avatar

    apache/incubator-seata

    25,984View on GitHub↗

    Seata is a distributed transaction coordinator designed to ensure data consistency and atomicity across microservices. It provides a centralized framework for managing global transactions, preventing partial data updates across different databases and services. The project implements multiple transaction modes to balance consistency and performance. This includes an automatic mode that uses rollback logs to coordinate compensation without modifying business logic, a try-confirm-cancel pattern for resources lacking native ACID support, and a saga orchestration engine for managing long-lived bu

    Javaatconsistencydistributed-transaction
    View on GitHub↗25,984
  • yedf/dtmyedf avatar

    yedf/dtm

    10,885View on GitHub↗

    dtm is a distributed transaction framework and workflow orchestrator designed to manage data consistency across microservices. It functions as a centralized coordinator that synchronizes distributed transactions and manages the state and execution flow of complex sequences of distributed tasks. The framework implements several coordination patterns, including Saga, TCC, and XA, to prevent synchronization errors. It specifically provides a multi-language transaction coordinator to synchronize operations across services written in different programming languages and utilizes a reliable messagin

    Go
    View on GitHub↗10,885
  • seata/seataseata avatar

    seata/seata

    25,987View on GitHub↗

    Seata is a distributed transaction coordinator and consistency framework designed to maintain data integrity across multiple microservices. It functions as a manager that synchronizes state across separate databases to ensure atomic commits or rollbacks of global transactions. The project provides a toolkit for implementing distributed transaction patterns, using a two-phase commit protocol and centralized status tracking to prevent data anomalies. It orchestrates eventual consistency through state-machine-based tracking and message-driven coordination to handle timeouts and failures in distr

    Java
    View on GitHub↗25,987
  • eventuate-tram/eventuate-tram-sagaseventuate-tram avatar

    eventuate-tram/eventuate-tram-sagas

    1,083View on GitHub↗

    Eventuate Tram Sagas is a framework for managing distributed transactions across microservices. It functions as an event-driven workflow engine that coordinates complex business processes by executing sequences of local operations and maintaining state transitions across independent service boundaries. The framework implements the transactional outbox pattern to ensure atomicity between database updates and message publishing. It coordinates distributed workflows through asynchronous messaging, utilizing a message broker to decouple services and guarantee reliable delivery of commands and rep

    Java
    View on GitHub↗1,083
Compare all 30 related projects→

Frequently asked questions

What does dromara/hmily do?

Hmily is a distributed transaction framework and data consistency manager designed to maintain state across multiple services. It operates as a coordinator that tracks transaction states across remote procedure calls to manage nested operations and ensure atomic completions.

What are the main features of dromara/hmily?

The main features of dromara/hmily are: Compensating Transactions, SQL Rollback Generation, Distributed Transaction Coordinators, Transaction Identifier Propagation, Distributed Transaction Recovery, Transaction Recovery Logs, Asynchronous Recovery Orchestration, Data Synchronization and Consistency.

Which projects share features with dromara/hmily?

Projects with overlapping indexed features include: apache/incubator-seata — Seata is a distributed transaction coordinator designed to ensure data consistency and atomicity across microservices.… yedf/dtm — dtm is a distributed transaction framework and workflow orchestrator designed to manage data consistency across… seata/seata — Seata is a distributed transaction coordinator and consistency framework designed to maintain data integrity across… eventuate-tram/eventuate-tram-sagas — Eventuate Tram Sagas is a framework for managing distributed transactions across microservices. It functions as an… codingapi/tx-lcn — tx-lcn is a distributed transaction framework and Java transaction middleware designed to manage atomic operations and… changmingxie/tcc-transaction — This project is a Java implementation of the try-confirm-cancel pattern, providing a distributed transaction framework…