11 个仓库
Techniques for separating database read and write operations to improve scalability.
Distinct from Parallel Shard Reads and Writes: Shortlist candidates focused on educational implementations or shard-level parallel writes, not the architectural pattern of read-write splitting.
Explore 11 awesome GitHub repositories matching data & databases · Read-Write Splitting. Refine with filters or upvote what's useful.
Jeesite is a full-stack low-code development framework designed for building enterprise administrative portals using Spring Boot, MyBatis, and Vue. It functions as a comprehensive platform for creating administrative dashboards with integrated role-based access control and organizational data permission systems. The framework distinguishes itself through a combination of automated CRUD code generation and an integrated RAG platform that connects large language models to enterprise data via vector stores. It further incorporates a BPMN-based workflow engine to automate complex business process
Implements read-write splitting and sharding to handle high-volume enterprise data loads.
xorm is a relational mapper and object-relational mapping tool for Go. It translates Go structures into SQL queries and maps database rows back into native objects, providing a multi-dialect database driver that supports MySQL, PostgreSQL, SQLite, Oracle, SQL Server, and TiDB. The project features a read-write splitting manager that routes modification requests to a primary database and read requests to replicas. It includes a database schema synchronizer to automatically align table structures and indexes with application data models, as well as a fluent SQL query builder for constructing co
Routes database operations to different servers by splitting read requests to replicas and write requests to the primary.
Kingshard is a MySQL database proxy and sharding middleware that routes SQL traffic between clients and multiple database nodes. It functions as a load balancer, read-write splitter, and SQL query firewall to manage how data is accessed and distributed across a database infrastructure. The system implements data sharding using hash, range, or date strategies to split tables across multiple nodes. It enables read-write splitting by directing data modification requests to a master node while distributing read-only queries across a pool of slave replicas. The proxy provides traffic management t
Separates database traffic by routing write operations to the master and read requests to replicas.
This project is a reference implementation of Domain-Driven Design, Clean Architecture, and Command Query Responsibility Segregation (CQRS) patterns using the Go programming language. It serves as a sample application to demonstrate how to decouple core domain rules from infrastructure and delivery mechanisms. The system is built as a gRPC microservices architecture, utilizing type-safe communication and service contracts. It implements an event-driven architecture to manage eventual consistency and asynchronous processing, specifically employing the Outbox pattern to ensure reliable messagin
Implements separate read and write models to optimize data retrieval and state updates independently.
Blog.Core 是一个生产就绪的后端样板,用于使用 ASP.NET Core 构建企业级 API 和微服务。它为分布式系统提供了基础架构,包括用于数据库优先(database-first)脚手架和实现多租户 API 框架的工具。 该项目的特色在于自动数据层生成,可直接从数据库模式生成实体模型和存储库层。它使用标准身份服务器协议实现了集中式身份管理系统,以处理跨多个客户端和项目的身份验证和授权。 该框架涵盖了广泛的企业级功能,包括通过事件总线进行的异步消息处理、分布式内存缓存以及读写数据库流量分离。它结合了具有部门数据限制的基于角色的访问控制,并通过 API 性能分析和活动审计提供系统可观测性。 该系统还包括对用于推送通知的双向服务器-客户端通信、全文搜索集成以及集中式服务配置的支持。
Implements architectural read-write splitting to route queries to replicas and updates to the primary database.
本项目是一个专为 Spring Boot 设计的动态数据源管理器,用于处理多个数据库连接并在运行时进行切换。它提供了一个用于管理数据库读写分离、协调跨不同数据库的分布式事务,以及在无需重启应用的情况下更新连接设置的系统。 该框架通过其根据用户会话或请求头路由流量以支持多租户架构的能力脱颖而出。它还包含一种在配置文件中加密敏感数据库凭据的机制,以防止明文泄露。 其能力范围扩展至数据库连接路由、主从节点间的读写分离,以及用于减少启动时间的懒连接初始化。它进一步通过集中式事务控制管理数据一致性,并支持运行时添加或移除数据库连接配置。
Optimizes database performance by routing read queries to slave nodes and write queries to the master node.
Goravel 是一个功能齐全的开发脚手架和框架,用于使用 Go 编程语言构建 Web 应用、REST API 和 gRPC 服务。它实现了模型-视图-控制器(MVC)架构,并为高性能远程过程调用服务器和客户端提供了全面的工具包。 该框架的独特之处在于其广泛的集成生态系统,包括用于数据库管理的流畅对象关系映射器(ORM),以及用于管理自动化和项目脚手架的专用命令行界面工具包。它具有基于驱动的服务抽象,允许开发者在不更改应用逻辑的情况下切换存储、缓存和会话后端。 该平台涵盖了广泛的应用功能,包括带有分布式队列的异步任务处理、通过基于令牌的身份验证进行的安全身份管理,以及具有加密和访问控制的稳健安全层。它还提供内容本地化、模板渲染以及带有依赖模拟的自动化测试基础设施工具。
Provides the ability to separate database read and write operations to improve scalability by routing traffic to replicas.
Atlas 是一个 MySQL 数据库代理和中间件系统,旨在管理客户端与数据库集群之间的流量。它作为高可用数据库网关和分片中间件,为路由、负载均衡和管理数据库连接提供了一个容错入口点。 该项目的特色在于结合了读写分离(将查询定向到主服务器或副本服务器)和数据分片(将信息分布到多个后端实例)。它利用连接池来减少建立新会话的开销,并实现协议感知路由以拦截和定向客户端请求。 该系统包含健康监控和自动故障转移功能,以确保服务连续性。它支持对后端服务器可用性的管理控制、用于访问控制的客户端 IP 过滤,以及通过信号驱动流量分流实现零停机升级的机制。事务完整性通过客户端意外断开连接时的自动回滚来管理。
Separates database read and write operations by directing queries to replicas and modifications to the primary server.
FreeSql 是一个 .NET 对象关系映射器(ORM)和数据访问层,可将面向对象的代码转换为适用于多种关系型数据库提供程序的 SQL。它作为一个流畅的 SQL 查询构建器和数据库架构同步器,允许开发者将数据库表和索引结构与实体类定义保持一致。 该框架专门针对 .NET Native AOT 进行了优化,以确保更小的内存占用和更快的启动时间。它包含一个数据库流量管理器,通过读写分离、动态分表和基于租户的数据隔离来分配负载。 其广泛的功能包括使用特定于提供程序的批量复制机制实现高性能数据摄入,利用窗口函数和递归 CTE 进行高级查询,以及基于 AOP 的数据变更审计监控。该系统还提供用于自动迁移的架构管理工具,以及用于从数据库元数据生成实体类的开发实用程序。
Implements routing strategies that separate read operations to replicas and write operations to a primary master database.
这是一个专注于高级 Java 工程的技术面试课程和学习指南。其课程内容围绕系统设计、高并发工程和分布式系统构建展开。 资源包括分布式数据库策略指南和微服务架构参考。这些材料涵盖了消息队列、分布式系统和可靠异步通信实现的设计模式。 内容涵盖了广泛的功能领域,包括搜索引擎架构、分布式缓存优化和服务流量治理。它还详细介绍了数据库分片、读写分离、分布式锁和服务发现等架构模式。
Covers the architectural pattern of read-write splitting to separate database operations and improve scalability.
This project is a technical resource and pattern library for building enterprise applications with Python. It serves as a guide for implementing clean architecture, providing a framework for separating core business logic from infrastructure and external frameworks. The material focuses on Domain-Driven Design and the application of architectural patterns to maintain complex business requirements. It provides specific guidance on the Repository pattern for data abstraction, Command-Query Responsibility Segregation for optimizing read and write paths, and the use of dependency inversion to dec
Implements the separation of read and write models to optimize performance and simplify complex business logic.