原创 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共