zebra客户端结构

官方图

  1. 最上层 ShardDataSource: 用于分库分表; 包含一个或多个 GroupDataSrouce
  2. GroupDataSource: 主要用于读写分离, 分库中的一个shard
  3. 最下层的 SingleDataSource: 主要用于和 mysql 单个实例的连接, 这边是真正和连接池 dbcp/druid/hikaricp 打交道的

ShardDataSource、GroupDataSource都实现了JDBC协议的javax.sql.DataSource接口,因此你可以把二者都当做一个普通的数据库连接池来使用。所有读写分离、分库分表的底层实现逻辑,都对用户进行了屏蔽。

完整目录:数据库中间件zebra源码分析

本文来自博客园,作者:mushishi,转载请注明原文链接:https://www.cnblogs.com/mushishi/p/15022058.html

原文地址:https://www.cnblogs.com/mushishi/p/15022058.html