原创 ShardingJdbc2.X學習總結系列(十):源碼解析—讀寫分離(主從)

        前面9篇文章主要是介紹了,shardingJdbc的介紹,使用,包括分庫分表的源碼解讀,我們知道shardingJdbc不僅僅只有做分庫分表的功能,還可以讀寫分離,並且可以支持分庫分表+讀寫分離聯合使用,這篇的話我們就來了

原创 ShardingJdbc2.X學習總結系列(十一):源碼解析—事務

事務:恢復和併發控制的基本單位。具有ACID(原子性、一致性、隔離性、持久性)四大屬性。 數據庫事務:可以是一條sql或者一組sql的執行,當事務包含多條sql時,有一個執行出現異常,就會全部回滾。 但是ShardingJdbc是主要應用

原创 ShardingJdbc2.X學習總結系列(六):源碼解析—SQL改寫

前兩篇我們介紹了SQL解析和SQL路由兩個功能,這篇文章我們主要是介紹SQL改寫。 1.首先還是介紹一些關鍵詞語 1.SQL 改寫:改寫 SQL,解決分庫分表後,查詢結果需要聚合,需要對 SQL 進行調整,例如分頁 SQLToken,S

原创 ShardingJdbc2.X學習總結系列(五):源碼解析—SQL路由

上篇主要介紹了SQL解析的過程,這一篇主要講解的是SQL路由  首先介紹幾個重要的名詞+內部實現圖 1.TableRule:表規則配置對象 1.1DataNode :靜態分庫分表數據單元 數據分片的最小

原创 ShardingJdbc2.X學習總結系列(八):源碼解析—SQL執行

前面幾篇文章介紹了SQL解析,SQL路由,SQL改寫的過程,包括組裝成最後的Collection<PreparedStatementUnit> 這篇文章就開始介紹SQL的執行了 public boolean execute() thro

原创 ShardingJdbc2.X學習總結系列(九):源碼解析—SQL執行結果合併

從前面幾篇文章,我們瞭解了從SQ解析---》SQL路由--》SQL改寫--》SQL執行的整體過程。這一篇主要是講解執行的結果如何變成正規結果相應到調用方的。 這裏不同的執行方法處理的方式( execute , executeUpdate

原创 ShardingJdbc2.X學習總結系列(七):源碼解析—SQL執行前準備

在通過解析,路由,改寫之後還需要做一步處理,把 生成的SQLRouteResult的對象轉換成 Collection<PreparedStatementUnit> private Collection<PreparedStatement

原创 log日誌系列總結

1.背景         在現在這個服務化橫行的時代,我們會對接很多的服務方,但是每個服務方的開發人員都會有一個自己用的習慣的日誌實現,其中包括(Logback、Log4j1、Log4j2、JCL、J.U.L),在我們開發過程中就需要整合

原创 線程池原理+JDK1.8源碼解析

線程池創建的方式: public ThreadPoolExecutor(int corePoolSize, int maximumPoolSize,

原创 ShadingJdbc2.X學習總結系列(二):使用

1.maven 引入依賴jar包 <dependency> <groupId>io.shardingjdbc</groupId> <artifactId>sharding-jdbc-core</artifactId>

原创 ShadingJdbc2.X學習總結系列(三):源碼解析—整體流程

整體介紹條件: 數據庫爲mysql   ORM爲mybatis mybatis執行順序爲 : 1.獲取DefaultSqlSession 2.生成Executor 3.獲取StatementHandler 4.調用StatementHan

原创 ShadingJdbc2.X學習總結系列(一):介紹

1.簡介 Sharding-JDBC是噹噹應用框架ddframe中,從關係型數據庫模塊dd-rdb中分離出來的數據庫水平分片框架,實現透明化數據庫分庫分表訪問。           它直接封裝JDBC協議,可以理解爲增強版的JDBC驅動,

原创 ShadingJdbc2.X學習總結系列(四):源碼解析—SQL解析

1.解析包整體介紹 1.5.0M1版本以後採用的是自研的解析引擎,支持join、aggregation、order by、group by、limit、or;目前不支持union、部分子查詢、函數內分片等不太應在分片場景中出現的SQL解析

原创 Java類加載的順序-包含父子關係

                                                                         Java類加載的順序-包含父子關係 首先看一段代碼: public class TestC

原创 Dubbo學習之路(六):服務調用流程源碼解讀

                                             Dubbo學習之路(六):服務調用流程源碼解讀      先看一段代碼: @Autowired private DemoService de