ContextRefreshEvent是Spring容器加載完發(fā)送的一個事件,在工作中有很多實現邏輯使用了該機制。 常見的使用姿勢如下: 當調用 bstractApplica...
ContextRefreshEvent是Spring容器加載完發(fā)送的一個事件,在工作中有很多實現邏輯使用了該機制。 常見的使用姿勢如下: 當調用 bstractApplica...
今年Dubbo發(fā)布了全新的3.0版本,開始面向云原生,有很多細節(jié)與之前較多使用的2.7.x版本有所不同,本文主要介紹Dubbo3.0下的服務引用流程與之前的不同點,一些相同的...
性能提升是我們追求的一個目標,合理的設計和實現有助于應對較多的復雜場景。有時,可能一個小小的改動點就能帶來意想不到的效果。在本文中,將簡單的介紹下標簽路由的優(yōu)化點。 標簽路由...
路途雖遙遠,將來更美好微信公號號:九點半的馬拉 在傳統(tǒng)模式下,Dubbo消費端需要調用某一遠程服務器端的方法時,消費端也需要額外導入服務類接口API,Dubbo也由此實現了面...
Dubbo在服務調用時支持同步調用和異步調用等方式。 在Dubbo2.6版本及之前的版本在實現異步調用時存在一定的缺點,實際上是一種假異步。 下面列舉一個異步案例。 當調用服...
是的,判斷數據包是否發(fā)送完整,防止拆包發(fā)生,這里應該加個return,忘記了
輕量級RPC設計與實現第一版什么是RPC RPC (Remote Procedure Call Protocol), 遠程過程調用,通俗的解釋就是:客戶端在不知道調用細節(jié)的情況下,調用存在于遠程計算機上...
Dubbo通常使用@Reference來引用服務,通過ReferenceAnnotationBeanPostProcessor類,我們可以掃描被@Reference注解標注的...
微信公眾號:九點半的馬拉路途雖遙遠,將來更美好學海無涯,大家一起加油! Dubbo是一款很優(yōu)秀的RPC框架,目前Github的Star數已經達到34.6k,有效的反映出它的受...
客戶端本地數量超過1000后是為了防止出現消費端出現消息堆積,減輕消費端的處理壓力,防止宕機
https://github.com/apache/rocketmq/blob/master/docs/cn/features.md
RocketMQ閱讀筆記之消息消費的消息拉取消息消費,簡而言之就是消費者從消息隊列里讀取數據。消費者有兩種消費方式: Push方式。消息服務器接收到信息后,主動把消息推送給消費者,實時性高。但是這樣加大了消息服務器的工...
WeakHashMap與HashMap有些類似,但也有很多地方不同。它們設置了相同的負載因子和初始容量,但是前者的數據結構只使用了數組+鏈表,并沒有用到紅黑樹, 在這里,與H...
在該篇文章中我將開始介紹ReentrantReadWriteLock有關源碼分析。 我先簡單介紹下有關變量的含義,再分析讀鎖和寫鎖的獲取和釋放過程。 有關變量 ReadLoc...
通常我們利用線程池執(zhí)行任務時,一般會調用execute()方法來進行任務的提交。 然后如果線程池不是將任務放在工作隊列里面,而是要創(chuàng)建核心線程或者非核心線程時,會進一步調用a...
之前的限流功能都是單機版的,只能統(tǒng)計本地的服務調用次數信息,那么如果是在集群狀態(tài)下,一個服務被放在了多個服務器上,假設一個集群有5臺機器,每臺機器單機限流閾值為10qps,理...
Sentinel提供了@SentinelResource注解用于定義注解,并提供了AspectJ的擴展用于自定義資源、處理BlockException等。 注解解釋: 當出現...
在本篇文章中將講解有關熔斷降級的原理。 熔斷降級策略是在DegradeSlot中實現的,會調用entry()方法。 下面的邏輯主要是根據當前的資源名從在DegradeRule...
在前面一篇文章寫了默認的DefaultNode的實現方法,現在講解剩余的幾種方式。 RateLimiterController 勻速排隊 重要參數 WarmUpControl...
FlowSlot主要是進行限流工作的。 結合從以前的插槽(NodeSelectorSlot,ClusterNodeBuilderSlot和StatisticSlot)收集的運...