30 open-source projects similar to dromara/hmily, ranked by shared indexed features. Tags may describe platforms or build tools rather than the same primary purpose. Check each project’s use case, license, and deployment requirements before treating it as a replacement.
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
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
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
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
This project is a Java implementation of the try-confirm-cancel pattern, providing a distributed transaction framework and management library. It functions as a coordinator that manages the lifecycle of multi-phase transactions to ensure consistency across multiple distributed services. The framework includes a distributed transaction coordinator server that offloads event and task operations from local services. It also provides a dedicated dashboard for visualizing transaction status and manually operating distributed events and tasks. The system manages consistency through a three-phase c
tx-lcn is a distributed transaction framework and Java transaction middleware designed to manage atomic operations and data consistency across multiple microservices and relational databases. It functions as a distributed transaction coordinator that synchronizes commit and rollback operations to ensure global data integrity. The system provides a microservice consistency manager that tracks and resolves transaction flows across service boundaries. It features an integration layer compatible with middleware such as Spring Cloud, Dubbo, and Motan, allowing it to operate across different servic
EasyTransaction is a distributed transaction framework that coordinates data consistency and failover across independent microservices. It implements unified patterns such as SAGA, Try-Confirm-Cancel, and reliable messaging to handle multi-service operations and failures safely. The framework combines diverse transaction styles and nests operations to manage complex workflows without relying on central coordinators. It includes an automatic compensation engine that executes reverse operations and rollback workflows sequentially when downstream failures occur, alongside an automated crash reco
dtm is a distributed transaction framework and polyglot transaction coordinator designed to maintain data consistency across microservices. It functions as a Saga orchestration engine and a two-phase message coordinator, ensuring that multi-service operations either succeed completely or roll back to a consistent state. The project distinguishes itself by supporting multiple consistency patterns, including Saga, TCC, XA, and outbox patterns, allowing users to select the appropriate model for their specific application requirements. It provides a polyglot integration layer via HTTP and gRPC, e
SpringBoot-Labs is a collection of educational resources and reference implementations for Java backend architecture and distributed systems. It provides practical lab guides and code samples focused on building applications with the Spring Boot framework and designing scalable microservices architectures. The project specifically covers service governance and distributed cloud deployment patterns using Spring Cloud and Spring Cloud Alibaba. It includes a dedicated kit for microservices and a guide for executing remote procedure calls and managing service discovery via the Dubbo protocol. Th
This project is a reference implementation of a distributed system built using Spring Cloud Alibaba, Spring Boot, and JDK 17. It serves as a comprehensive model for implementing a microservices architecture. The system integrates a wide range of distributed patterns, including global transaction coordination for data consistency, OAuth2 and JWT for identity management, and Kubernetes-based container orchestration. It features a dedicated observability stack for distributed request tracing, log aggregation, and service health monitoring. The implementation covers several functional domains, i
Mycat-Server is a MySQL database middleware system that functions as a sharding proxy, distributed database coordinator, and high availability manager. It acts as a proxy layer that routes SQL traffic between applications and multiple backend MySQL database instances to enable horizontal scaling. The system coordinates distributed transactions, generates global unique sequences to prevent primary key collisions, and executes distributed join queries across multiple database shards. It includes a load balancer that performs read-write splitting by directing traffic between primary and slave no
ShardingSphere is a distributed SQL database middleware that provides sharding, read-write splitting, and distributed transaction management for relational databases. It functions as a layer that intercepts SQL queries to distribute data across multiple physical database instances for horizontal scaling. The project is distinguished by its ability to operate as either a standalone transparent database proxy or via direct integration as a JDBC driver. It features a SQL dialect translator that parses queries into abstract syntax trees to convert syntax between different database engines, enabli
TinyKV is a distributed key-value store designed for storing and retrieving data across multiple nodes with high availability. It functions as a distributed database system that incorporates a dedicated key-value storage engine for raw data persistence and retrieval on individual nodes. The project includes a Raft consensus engine to ensure data consistency and fault tolerance across a cluster of servers. It also features a distributed transaction manager that coordinates atomic commits and concurrency control to maintain data integrity across shards. The system covers cluster membership man
pgdog is a PostgreSQL sharding proxy, distributed SQL router, and connection pooler. It is designed to enable horizontal data distribution by splitting tables and indices across multiple independent servers to scale storage and processing capacity. The project distinguishes itself through online resharding capabilities, using logical replication to move data between shards without application downtime. It supports multiple routing strategies, including hash, list, and range-based query routing, and manages distributed atomic transactions using a two-phase commit process to ensure consistency
CAP is a .NET distributed transaction framework and event bus designed to manage asynchronous communication in microservices. It implements the outbox pattern to ensure eventual consistency and reliable message delivery by persisting messages in local database tables until transactions commit. The framework includes a distributed message monitor and web dashboard for tracking the status of sent and received messages. It provides tools for event traffic visualization, distributed request tracing, and the ability to manually trigger retries for failed delivery attempts. The system supports var
This project serves as a comprehensive technical reference for the architecture and design of data-intensive applications. It provides a structured analysis of the fundamental principles required to build reliable, scalable, and maintainable software systems, covering the core trade-offs inherent in modern data infrastructure. The repository explores the mechanics of distributed data management, including strategies for replication, partitioning, and achieving consensus across multiple nodes. It details the design of storage engines, indexing techniques, and transaction management models, whi
Spring Cloud Alibaba is a microservices orchestration framework that provides a standardized programming model for building distributed systems. It functions as a cloud-native integration layer, bridging enterprise application frameworks with distributed infrastructure to manage service discovery, traffic control, and state consistency across complex, multi-part application environments. The framework distinguishes itself through specialized components for managing distributed operations, including aspect-oriented traffic control that enforces flow rules, circuit breaking, and rate limiting a
Iroh is a peer-to-peer networking stack and distributed system designed for secure direct connections, content-addressed storage, and synchronized data sharing. It provides a foundation for decentralized applications by combining a QUIC-based networking layer with primitives for distributed state and data transfer. The project distinguishes itself through a comprehensive suite of decentralized capabilities, including a distributed data store using conflict-free replicated data types for collaborative synchronization and a content-addressed storage system for verifiable, resumable transfers of
This project is an integration framework that bootstraps Apache Dubbo remote procedure call services within Spring Boot applications. It serves as a microservice communication framework that enables the implementation of RPC services, service discovery, and distributed governance through automated configuration. The project distinguishes itself by providing a cross-language RPC bridge, allowing services written in different languages to communicate via standards such as gRPC and Protobuf. It further enables the exposure of backend microservices as REST endpoints using the Triple protocol for
Orleans is a .NET distributed actor framework designed for building scalable, cloud-native applications. It implements a virtual actor model where entities with stable identities manage their own state and lifecycle across a cluster of servers. The framework provides a distributed state management system with ACID transaction support and a distributed pub/sub streaming engine for real-time data processing. It distinguishes itself through location-transparent routing, automatic actor activation and deactivation, and elastic cluster scaling that redistributes workloads during node failures. Th
This project is a comprehensive Java backend engineering guide and technical reference focused on high-concurrency design, distributed systems, and microservices architecture. It provides detailed strategies for decomposing monolithic applications, managing service discovery, and implementing the architectural patterns required for scalable backend environments. The repository distinguishes itself through an extensive collection of big data algorithmic references and database scaling strategies. It covers memory-efficient techniques for analyzing massive datasets, such as Top-K element extrac
YugabyteDB is a distributed SQL database and relational data store designed for horizontal scalability and high availability across multiple nodes or regions. It functions as a cloud-native system that ensures continuous availability and supports PostgreSQL compatible query languages and drivers. The system includes specialized capabilities as a vector database for AI, utilizing high-dimensional indexing to perform similarity searches. It is engineered as a multi-region cloud database that synchronizes data across different geographic locations to maintain global availability. The project co
Spring Cloud Alibaba is a suite of libraries designed to connect distributed Java applications to Alibaba cloud middleware and infrastructure services. It provides a comprehensive set of tools for messaging, configuration, task scheduling, transaction coordination, and service discovery. The project implements distributed infrastructure capabilities including a transaction coordinator for maintaining data consistency across multiple services and a configuration manager for storing external settings in a centralized cloud repository with automatic updates. It includes a distributed job schedul
mall4cloud is a multi-tenant B2B2C e-commerce platform built on a Spring Cloud microservice architecture. It orchestrates independently deployable services with service discovery, configuration, caching, messaging, distributed transactions, object storage, and full-text search to support a marketplace with separate interfaces for platform administrators, merchants, and customers. The platform distinguishes itself through its comprehensive microservice infrastructure, using RocketMQ for event-driven messaging, Seata for distributed transaction coordination across services, and Redis for cachin
SqlSugar is an object-relational mapping library for .NET that translates C# and VB objects into database queries and tables without requiring raw SQL. It is designed as a multi-database ORM supporting SQL Server, MySQL, PostgreSQL, Oracle, MongoDB, ClickHouse, and other databases through a unified API, and it is compatible with .NET AOT compilation for native ahead-of-time deployment. The library distinguishes itself through high-speed bulk data operations that can insert or update millions of records in seconds using batch processing instead of row-by-row handling. It also provides multi-te
This project is a feature-rich Go client library designed for interacting with Redis. It serves as a comprehensive interface for managing remote data stores, enabling developers to execute standard database commands, handle complex data structures, and perform asynchronous operations within Go applications. The library distinguishes itself through its support for advanced Redis capabilities, including connection pooling, pipelining, and transactional integrity. It provides specialized primitives for managing distributed clusters, including automated topology updates and request routing to sha
Hazelcast is a distributed data platform that combines an in-memory data grid with a stream processing engine to support real-time analytics and event-driven applications. It functions as a partitioned, distributed key-value store that replicates data across cluster nodes to provide low-latency access and high availability. The platform also serves as a distributed SQL query engine, allowing users to execute standard SQL statements against both in-memory datasets and external data sources. What distinguishes Hazelcast is its use of a distributed consensus subsystem to maintain strongly consis
Riak is a decentralized NoSQL key-value store designed for high availability and fault tolerance. It is a Dynamo-style distributed database that utilizes consistent hashing and eventual consistency to scale data across a cluster of nodes. The system functions as a geo-replicated datastore, synchronizing data across multiple physical locations to provide disaster recovery and maintain availability during regional outages. It employs a multi-master replication model, allowing writes to any node in the cluster. The platform covers broad capability areas including decentralized cluster coordinat
This project is a distributed systems design framework and architecture guide. It provides technical resources for designing, deploying, and coordinating independent network services. The framework establishes a structured methodology for migrating monolithic applications into decentralized services by separating frontend and backend concerns. It serves as a reference for event-driven architecture, focusing on maintaining data consistency across network boundaries using event sourcing and local transaction records. The project covers a broad range of capabilities including distributed servic
H2 is a JDBC-compliant relational database management system written in Java. It functions as an embeddable SQL database that can run directly within an application process to remove network latency, or as an in-memory database for high-performance volatile storage. It also includes a web-based console for executing SQL commands and administering schemas. The system is characterized by its flexible deployment modes, including a standalone server mode for remote TCP/IP access and a mixed mode for simultaneous local and remote connectivity. It features a dialect emulation layer and compatibilit