常见分库分表中间件
目前主要有两种类型的分库分表中间件,一种是基于Proxy代理,另一种是基于JDBC的。
Proxy:
1. Mycat:基于阿里巴巴的Cobar进行二次开发的。
2. Atlas:360公司基于Mysql-proxy所开发的。
JDBC:
1. ShardingSphere。
2. TDDL(Taobao Distributed Data Layer):淘宝根据自己业务情况所开发的,属于client层方案,基于jdbc datasource实现。
ShardingSphere简介
ShardingSphere是一套开源的分布式数据库中间件解决方案组成的生态圈,它由Sharding-JDBC、Sharding-Proxy和Sharding-Sidecar(计划中)这3款相互独立的产品组成。 他们均提供标准化的数据分片、分布式事务和数据库治理功能,可适用于如Java同构、异构语言、容器、云原生等各种多样化的应用场景。
ShardingSphere以前叫做sharding-jdbc, 是一个轻量级 Java 框架,只在JDBC 层提供了扩展性服务,改名后ShardingSphere中的Sphere单词有圈子的意思,也就是将Proxy方面的功能也包含进来了。ShardingSphere致力于构造一个生态圈,这个生态圈由一套开源的分布式数据库中间件解决方案所构成。