sharding-jdbc源码分析
-
0. sharding-jdbc源码分析准备工作
阿飞Javaer,转载请注明原创出处,谢谢! sharding-jdbc源码分析准备工作 接下来对sharding-jdbc源码的分析基于tag为1.5.4.1源码,根据shard…
-
分库分表中间件华山论剑
分库分表中间件 分库分表的缺点: 引入分布式事务的问题; 跨节点 Join 的问题; 跨节点合并排序分页等聚合类SQL问题; 多数据源管理问题; 扩容缩容,数据迁移等问题; 分库分…
-
7. sharding-jdbc源码之group by结果合并(2)
阿飞Javaer,转载请注明原创出处,谢谢! 在sharding-jdbc源码之group by结果合并(1)中主要分析了sharding-jdbc如何在GroupByStream…
-
6. sharding-jdbc源码之group by结果合并(1)
阿飞Javaer,转载请注明原创出处,谢谢! 在5. sharding-jdbc源码之结果合并中已经分析了OrderByStreamResultSetMerger、LimitDec…
-
24. sharding-jdbc源码分析之orchestration实现
源码图解 orchestration源码结构图.png 根据源码图解可知,sharding-jdbc-orchestration模块中创建数据源有两种方式:工厂类和spring;且…
-
23. sharding-jdbc源码之orchestration简介&使用
orchestration简介 sharding-jdbc2.x核心功能之一就是orchestration,即编排治理,什么意思呢?官方文档介绍–2.0.0.M1版本开…
-
22.sharding-jdbc源码之INSERT解析
阿飞Javaer,转载请注明原创出处,谢谢! INSERT语法 分析insert解析之前,首先看一下mysql官方对insert语法的定义,因为SQL解析跟语法息息相关: INSE…
-
21.sharding-jdbc源码之SQL解析-词法分析
阿飞Javaer,转载请注明原创出处,谢谢! sharding-jdbc对SQL解析的源码主要在下图所示parsing模块中,由下图可知SQL解析主要分为两部分:lexer和par…
-
18. sharding-jdbc源码之复杂路由实现
阿飞Javaer,转载请注明原创出处,谢谢! 路由条件 ParsingSQLRouter.java中决定是简单路由还是复杂路由的条件如下; private RoutingResul…
-
17. SQL重写为limit Integer.MAX_VALUE的无奈
阿飞Javaer,转载请注明原创出处,谢谢! 这篇文章源于sharding-jdbc源码分析之重写的遗留问题,相关sharding-jdbc源码如下: private void a…
-
16. sharding-jdbc源码分析之重写
阿飞Javaer,转载请注明原创出处,谢谢! 核心源码就在sharding-jdbc-core模块的com.dangdang.ddframe.rdb.sharding.rewrit…
-
15. sharding-jdbc源码之EventBus-轻量级进程内事件分发组件
阿飞Javaer,转载请注明原创出处,谢谢! EventBus来自于google-guava包中。源码注释如下: Dispatches events to listeners, a…
-
14. sharding-jdbc源码之异常处理
阿飞Javaer,转载请注明原创出处,谢谢! 一般项目都会有自己的一套异常处理方式,sharding-jdbc也不以外,sharding-jdbc源码处理异常的方式主要有下面2种方…
-
13. sharding-jdbc源码之读写分离
阿飞Javaer,转载请注明原创出处,谢谢! 读写分离支持项 提供了一主多从的读写分离配置,可独立使用,也可配合分库分表使用。 同一线程且同一数据库连接内,如有写入操作,以后的读操…
-
12. sharding-jdbc源码之强制路由
阿飞Javaer,转载请注明原创出处,谢谢! 源码分析 位于sharding-jdbc-core模块下的包com.dangdang.ddframe.rdb.sharding.hin…
-
10. sharding-jdbc源码之异步送达JOB
阿飞Javaer,转载请注明原创出处,谢谢! 最大努力送达型异步JOB任务 当最大努力送达型监听器多次失败尝试后,把任务交给最大努力送达型异步JOB任务处理,异步多次尝试处理;核心…
-
9. sharding-jdbc源码之最大努力型事务
阿飞Javaer,转载请注明原创出处,谢谢! BASE Transaction Best efforts delivery transaction (已经实现). Try conf…
-
8. sharding-jdbc源码之结果合并总结
阿飞Javaer,转载请注明原创出处,谢谢! 分页性能分析 性能瓶颈 查询偏移量过大的分页会导致数据库获取数据性能低下,以MySQL为例: SELECT * FROM t_orde…