All Projects → gubaojian → routing4db

gubaojian / routing4db

Licence: other
Simple Database Routing and Shard Framework

Programming Languages

java
68154 projects - #9 most used programming language
Batchfile
5799 projects

Projects that are alternatives of or similar to routing4db

spring-sharding-mybaits
mybatis3在spring中的分库分表
Stars: ✭ 24 (+50%)
Mutual labels:  sharding, sharding-db, sharding-mybatis
GameShardingDb
基于spring-sharding-mybaits集成redis缓存的游戏分布式存储框架.支持将对象序列化到队列里,异步存储。 使用spring集成mybatis3垂直和水平分库mysql.使用模版编程,采用代理模式,采集变化的字段,自动完成拼写sql,降低数据库落地难度 集成Mybatis-PageHelper分页,大数据量可以分批查询。提升查询速度
Stars: ✭ 41 (+156.25%)
Mutual labels:  sharding-db, sharding-mybatis
Cypress Parallel
Reduce up to 40% your Cypress suite execution time parallelizing the test run on the same machine.
Stars: ✭ 78 (+387.5%)
Mutual labels:  sharding
Sharding Method
分表分库的新思路——服务层Sharding框架,全SQL、全数据库兼容,ACID特性与原生数据库一致,能实现RR级别读写分离,无SQL解析性能更高
Stars: ✭ 188 (+1075%)
Mutual labels:  sharding
Mongo Cluster Docker
Docker compose config for mongodb cluster
Stars: ✭ 165 (+931.25%)
Mutual labels:  sharding
Redis Tools
my tools working with redis
Stars: ✭ 104 (+550%)
Mutual labels:  sharding
Rekord
A javascript REST ORM that is offline and real-time capable
Stars: ✭ 171 (+968.75%)
Mutual labels:  sharding
Zanredisdb
Yet another distributed kvstore support redis data and index. moved to: https://github.com/youzan/ZanRedisDB
Stars: ✭ 64 (+300%)
Mutual labels:  sharding
Octopus
Database Sharding for ActiveRecord
Stars: ✭ 2,496 (+15500%)
Mutual labels:  sharding
Libring
A fast consistent hash ring implementation in Elixir
Stars: ✭ 162 (+912.5%)
Mutual labels:  sharding
Star Zone
⭐星座空间App(社交类App)项目源码,包括Java后台、Android、管理后台的代码。自主研发了数据库分表、token权限认证
Stars: ✭ 189 (+1081.25%)
Mutual labels:  sharding
Ton
Telegram Open Network research group. Telegram: https://t.me/ton_research
Stars: ✭ 146 (+812.5%)
Mutual labels:  sharding
Mosaic Contracts
Mosaic-0: Gateways and anchors on top of Ethereum to scale DApps
Stars: ✭ 119 (+643.75%)
Mutual labels:  sharding
Kahip
KaHIP -- Karlsruhe HIGH Quality Partitioning.
Stars: ✭ 180 (+1025%)
Mutual labels:  sharding
Dble Docs Cn
Documents for dble in Chinese
Stars: ✭ 80 (+400%)
Mutual labels:  sharding
Pyquarkchain
Python implementation of QuarkChain
Stars: ✭ 194 (+1112.5%)
Mutual labels:  sharding
Cetus
Cetus is a high performance middleware that provides transparent routing between your application and any backend MySQL Servers.
Stars: ✭ 1,199 (+7393.75%)
Mutual labels:  sharding
Wotrd Cloud
基于nacos包含网关、认证授权、服务注册、发现、断路降级、限流、配置中心、分库分表等基础组件
Stars: ✭ 135 (+743.75%)
Mutual labels:  sharding
Redis Resharding Proxy
Redis Resharding Proxy
Stars: ✭ 168 (+950%)
Mutual labels:  sharding
Shardingsphere Elasticjob Cloud
Stars: ✭ 248 (+1450%)
Mutual labels:  sharding

Routing4DB

Routing4DB 是由Java实现的基于接口代理策略实现的数据源路由框架。通过数据源路由实现以下功能:

一、Master-Slave读写分离实现

1.1 写Master,读多个Slaves,示意图如下:

https://raw.githubusercontent.com/gubaojian/routing4db/master/docs/images/WriteMasterReadSlaves.jpg

1.2 写Master,读Master和多个Slave,示意图如下

https://raw.githubusercontent.com/gubaojian/routing4db/master/docs/images/WriteMasterReadMasterSlaves.jpg

1.3 Master-Standby-Slaves实现,此方式示意图如下

https://raw.githubusercontent.com/gubaojian/routing4db/master/docs/images/MasterStandbySlaves.jpg

二、分库路由功能,构建分布式数据库

2.1 单机分库功能,示意图如下:

https://raw.githubusercontent.com/gubaojian/routing4db/master/docs/images/SingleServerShardTable.jpg

2.2 多机集群分库,构建分布式数据库,示意图如下:

https://raw.githubusercontent.com/gubaojian/routing4db/master/docs/images/MutiServerShardTable.jpg

2.3 高可用多机分布式集群,示意图如下:

https://raw.githubusercontent.com/gubaojian/routing4db/master/docs/images/MutlLevelRouting.jpg

三、负载均衡
四、自定义数据源路由策略

如果框架自带的路由策略不能满足你们要求时,你可以通过的扩展路由接口,自定义路由策略。

五、指定特定数据源
六、支持单数据源事务
七、针对Mybatis的增强功能

Maven依赖

<dependency>
   <groupId>com.google.code.routing4db</groupId>
   <artifactId>routing4db</artifactId>
   <version>1.1.0</version>
</dependency>

<repository>
  <id>routing4db.github.com</id>
  <url>https://github.com/gubaojian/routing4db/raw/master/repository</url>
</repository>

快速入门参考

Routing4DB设计文档

如果您对此项目,有兴趣欢迎加入或交流讨论。

项目贡献者:无花

项目作者:谷宝剑

Email: [email protected] [email protected]

QQ号: 787277208

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].