TDDL分库分表 - wtdig/study GitHub Wiki
一、TDDL
tddl分为三层:
1、Matrix层
在于分库分表路由,SQL语句的解释、优化和执行,事务的管理规则的管理,各个子表查询出来结果集的Merge等
2、Group层
作用在于数据库读写分离,基本上主数据库负责读写,备份数据库只负责读;主备切换状态对调后备库变为主库,主库变为备库;权重的选择 根据权重选择要去读哪些库;数据保护,数据库down掉后的线程保护, 数据库挂掉后的线程保护,不会因为一个数据库挂掉导致所有线程卡死
3、Atom层
Atom 模块真正和物理数据库交互,提供数据库配置动态修改能力。
改层负责动态创建,添加,减少数据源。管理着底层的数据库IP,连接等信息;底层对物理数据库做了代理,对单库的JDBC做了一层封装,执行底层单库的SQL;线程数、执行次数等状态的统计等。