原创 dubbo的Extension源碼分析
我們基於ExtensionLoader.getExtensionLoader().getAdaptiveExtension()這個入口進行了源碼分析,已經通過上一節課進行了分析。我也做了很詳細的筆記給大家去做鞏固,希望大家有去學習 簡單整理
原创 dubbo源碼分析-服務調用流程-筆記
消費端調用過程流程圖 消費端的調用過程 消費端接口實例: 服務端接收消息處理過程 NettyHandler. messageReceived 接收消息的時候,通過NettyHandler.messageReceived作爲入
原创 dubbo源碼分析-Directory 和 LoadBalance-筆記
Directory 訂閱節點的變化, 當zookeeper上指定節點發生變化以後,會通知到RegistryDirectory的notify方法 將url轉化爲invoker對象 調用過程中invokers的使用 Stat
原创 dubbo源碼分析-服務端註冊流程-筆記
前面,我們已經知道,基於spring這個解析入口,到發佈服務的過程,接着基於DubboProtocol去發佈,最終調用Netty的api創建了一個NettyServer。 那麼繼續沿着RegistryProtocol.export這個方法,
原创 分佈式系統的基石序列化筆記 原
瞭解序列化的意義 Java 平臺允許我們在內存中創建可複用的Java 對象, 但一般情況下,只有當JVM 處於運行時,這些對象纔可能存在,即,這些對象的生命週期不會比JVM 的生命週期更長。 但在現實應用中,就可能要求在JVM停止運行之
原创 服務框架dubbo(一):基礎篇 原
學習博文:https://www.imooc.com/t/6300745 dubbo是一個分佈式服務框架,致力於提供高性能透明化RPC遠程調用方案,提供SOA服務治理解決方案。 由於dubbo各個分層都是很多擴展, 註冊中心有re
原创 深入分析ZooKeeper的實現原理 原
ZooKeeper的由來 主要是解決分佈式環境下的服務協調問題而產生的,實現ZooKeeper需要做什麼? 防止單點故障 所以這個中間件需要考慮到集羣,而且這個集羣還需要分攤客戶端的請求流量 集羣存在數據同步和leader節
原创 dubbo SPI 原
dubbo SPI擴展框架 dubbo採用微內核+插件式擴展體系,獲得極佳的擴展性。 dubbo沒有藉助spring,guice等IOC框架來管理,而是運用JDK SPI思路自己實現了一個IOC框架,減少了對外部框架的依賴 在Dubbo中
原创 javaassist 動態代理 原
Javaassist是一個高層的Java字節碼處理類庫, 能運行時動態生成類,修改類。 Javaassit 能動態生成類的基礎源於JavaClass的字節碼技術: 只要遵從規範,JavaClass可以來自任何地方。 類似的技術
原创 java 多進程 原
多進程的概念 一個JVM進程對應一個JAVA程序 Java編寫程序都運行在在Java虛擬機(JVM)中, 在JVM的內部,程序的多任務是通過線程來實現的 每用java命令啓動一個java應用程序,就會啓動一個JVM進程。 在同一個
原创 源碼中常用英文單詞 頂 原
Resolver BeansDtdResolver : spring bean dtd 解析器
原创 ZooKeeper的典型應用場景 原
ZooKeeper是一個高可用的分佈式數據管理與協調框架 ZAB算法的實現,很好的保證了分佈式系統數據一致性 數據發佈/訂閱 數據發佈/訂閱系統,即所謂配置中心 發佈者發佈數據到ZooKeeper的一系列節點上,供訂閱者訂閱,達到動態
原创 ZooKeeper java客戶端API 代碼地址 原
https://gitee.com/jly521/ZooKeeper-book.git
原创 【Zookeeper】源碼分析目錄(保存) 原
https://www.cnblogs.com/leesf456/p/6518040.html
原创 curator 框架 原
代碼::https://gitee.com/jly521/ZooKeeper-book.git 開源的ZooKeeper 客戶端 封裝了很多底層細節 Apache 頂級項目 還提供了ZooKeeper各種應用場景: Recipe共