摘要:
HTTPOutputConfig 统计信息收集 是否收集统计信息,统计输出间隔是多少 if o.config.Stats { o.queueStats = NewGorStat("output_http", o.config.StatsMs) } 统计信息收集 func (o *HTTPOutput 阅读全文
:: :: :: :: :: 管理 |
摘要:
HTTPOutputConfig 统计信息收集 是否收集统计信息,统计输出间隔是多少 if o.config.Stats { o.queueStats = NewGorStat("output_http", o.config.StatsMs) } 统计信息收集 func (o *HTTPOutput 阅读全文
摘要:
内部执行-官网流程图:SQL 解析 => 执行器优化 => SQL 路由 => SQL 改写 => SQL 执行 => 结果归并 对应5.0代码包shardingsphere-infra-*** SQL解析: 分为词法解析和语法解析。 先通过词法解析器将 SQL 拆分为一个个不可再分的单词。再使用语 阅读全文
摘要:
SQL简要流程 ShardingSphereDataSource -> ShardingSphereConnection -> ShardingSphereStatement/ShardingSpherePreparedStatement查询为例 @Override public ResultSet 阅读全文
摘要:
ShardingProxy服务器处理框架 启动:shardingsphere-proxy-bootstrap @NoArgsConstructor(access = AccessLevel.PRIVATE) public final class Bootstrap { public static v 阅读全文
摘要:
Scaling 这一部分的实现跟之前有显著的不同,先从入口shardingsphere-scaling-bootstrap ScalingServerBootstrap 看下,就是先初始化配置,再启动一个netty服务 @NoArgsConstructor(access = AccessLevel. 阅读全文
摘要:
Transaction 基本管理接口看着很熟悉,没啥特别的 具体实现有两类,基于XA的两阶段事务模型和基于SEATA-AT的柔性事务模型 XA和SEATA-AT经典流程图 官网图比较清晰 XA事务管理模型XAShardingTransactionManager 负责对多数据源进行管理和适配,并且将相 阅读全文
摘要:
来看下 Encrypt 功能 对用户输入的 SQL 进行解析,并依据用户提供的加密规则对 SQL 进行改写,从而实现对原文数据进行加密,并将原文数据(可选)及密文数据同时存储到底层数据库。 在用户查询数据时,它仅从数据库中取出密文数据,并对其解密,最终将解密后的原始数据返回给用户 核心基类,可以知道 阅读全文
摘要:
shardingsphere-readwrite-splitting 读写分离被单独拆分了出来,加载初始化配置逻辑都一样,读写分离api有一个扩展点,可以实现自己的ReplicaLoadBalanceAlgorithm逻辑,目前已有的只有轮询和随机 Datasouce选择中,如果是包含锁或不是读操作 阅读全文
摘要:
功能的注册与配置加载 以Governance分布式治理的注册中心为例 代码包整体是按照功能点划分,具体到每个功能,比如治理-代码大致分为spring-boot-starter启动加载相关;context上下文信息定义;core核心执行逻辑,比如对于注册中心,core包含了各类事件,监听的定义,等;a 阅读全文
摘要:
充分合理地在分布式的场景下利用关系型数据库的计算和存储能力,而并非实现一个全新的关系型数据库 三大产品: JDBC、PROXY、SIDECAR 功能要点: 数据分片 单据单表的问题:B+树索引深度增加,磁盘io增多性能下降;高并发请求集中引发性能问题;不可伸缩;运维操作备份恢复等难度增大 核心流程: 阅读全文
|