10 Repos
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 10 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 is a production-ready backend boilerplate for building enterprise APIs and microservices using ASP.NET Core. It provides a foundational infrastructure for distributed systems, including tools for database-first scaffolding and the implementation of multi-tenant API frameworks. The project distinguishes itself through automated data layer generation, which produces entity models and repository layers directly from database schemas. It implements a centralized identity management system using standard identity server protocols to handle authentication and authorization across multiple
Implements architectural read-write splitting to route queries to replicas and updates to the primary database.
This project is a dynamic datasource manager for Spring Boot designed to handle multiple database connections and switch between them at runtime. It provides a system for managing database read-write splitting, coordinating distributed transactions across disparate databases, and updating connection settings without requiring an application restart. The framework differentiates itself through its ability to route traffic based on user sessions or headers to support multi-tenant architectures. It also includes a mechanism for encrypting sensitive database credentials within configuration files
Optimizes database performance by routing read queries to slave nodes and write queries to the master node.
Goravel ist ein voll ausgestattetes Entwicklungs-Scaffold und Framework für die Erstellung von Webanwendungen, REST-APIs und gRPC-Diensten mit der Programmiersprache Go. Es implementiert eine Model-View-Controller-Architektur und bietet ein umfassendes Toolkit für leistungsstarke RPC-Server und -Clients. Das Framework zeichnet sich durch sein umfangreiches integriertes Ökosystem aus, das einen flüssigen Object-Relational-Mapper (ORM) für die Datenbankverwaltung und ein dediziertes CLI-Toolkit für administrative Automatisierung und Projekt-Scaffolding umfasst. Es verfügt über eine treiberbasierte Dienstabstraktion, die es Entwicklern ermöglicht, Speicher-, Cache- und Session-Backends auszutauschen, ohne die Anwendungslogik zu ändern. Die Plattform deckt ein breites Spektrum an Anwendungsfunktionen ab, darunter asynchrone Aufgabenverarbeitung mit verteilten Queues, sicheres Identitätsmanagement mittels tokenbasierter Authentifizierung sowie eine robuste Sicherheitsschicht mit Verschlüsselung und Zugriffskontrolle. Sie bietet zudem Tools für Content-Lokalisierung, Template-Rendering und eine automatisierte Testinfrastruktur mit Dependency-Mocking.
Provides the ability to separate database read and write operations to improve scalability by routing traffic to replicas.
Atlas ist ein MySQL-Datenbank-Proxy und Middleware-System, das entwickelt wurde, um den Datenverkehr zwischen Clients und Datenbankclustern zu verwalten. Es fungiert als hochverfügbares Datenbank-Gateway und Sharding-Middleware und bietet einen fehlertoleranten Einstiegspunkt für Routing, Lastverteilung und die Verwaltung von Datenbankverbindungen. Das Projekt zeichnet sich durch eine Kombination aus Read-Write-Splitting, das Abfragen an primäre oder replizierte Server leitet, und Daten-Sharding aus, um Informationen über mehrere Backend-Instanzen hinweg zu verteilen. Es nutzt einen Connection-Pooler, um den Overhead beim Aufbau neuer Sitzungen zu reduzieren, und implementiert protokollbewusstes Routing, um Client-Anfragen abzufangen und weiterzuleiten. Das System umfasst Funktionen für Gesundheitsüberwachung und automatisiertes Failover, um einen kontinuierlichen Dienst zu gewährleisten. Es unterstützt die administrative Kontrolle über die Verfügbarkeit von Backend-Servern, Client-IP-Filterung für die Zugriffskontrolle und einen Mechanismus für Zero-Downtime-Upgrades durch signalgesteuerte Verkehrsumleitung. Die Transaktionsintegrität wird durch automatische Rollbacks bei unerwarteten Client-Verbindungsabbrüchen verwaltet.
Separates database read and write operations by directing queries to replicas and modifications to the primary server.
FreeSql is a .NET object-relational mapper and data access layer that translates object-oriented code into SQL for multiple relational database providers. It functions as a fluent SQL query builder and database schema synchronizer, allowing developers to align database table and index structures with entity class definitions. The framework is specifically optimized for .NET Native AOT to ensure reduced memory footprints and faster startup times. It includes a database traffic manager to distribute load through read-write splitting, dynamic table sharding, and tenant-based data isolation. Bro
Implements routing strategies that separate read operations to replicas and write operations to a primary master database.
This project is a technical interview course and study guide focused on senior-level Java engineering. It provides a curriculum centered on system design, high-concurrency engineering, and the construction of distributed systems. The resources include a distributed database strategy guide and a microservices architecture reference. These materials cover specific design patterns for message queues, distributed systems, and the implementation of reliable asynchronous communication. The content covers broad capability areas including search engine architecture, distributed cache optimization, a
Covers the architectural pattern of read-write splitting to separate database operations and improve scalability.