ribbon是乙個客戶端負載均衡器,它可以很好地控制http和tcp客戶端的行為。feign已經預設使用了ribbon(參考文章)
一、先來看看ribbon的幾個核心類
1、iclientconfig
預設實現類defaultclientconfigimpl
,主要用來配置ribbon客戶端的相關屬性配置
2、serverlistupdater
預設實現類pollingserverlistupdater
,主要負責動態更新伺服器列表
start方法的啟動由dynamicserverlistloadbalancer
初始化的時候執行呼叫
3、serverlist
獲取伺服器列表
4、serverlistfilter
伺服器列表過濾器
5、iping
檢查伺服器是否或者
6、irule
負載均衡選擇器
7、iloadbalancer
負載均衡總控制器,預設實現類zoneawareloadbalancer
,其啟動了整個負載均衡客戶端
當客戶端發起呼叫的時候會呼叫iloadbalancer的chooseserver方法,根據irule的負載均衡演算法選擇乙個例項返回給呼叫者.
ConcurrentHashMap原理解析
什麼是concurrenthashmap?眾所周知,hashmap是一種非常高效的資料結構,但是依舊有它的缺陷。那就是在併發插入資料時,有可能會出現帶環鍊錶,讓下一次的讀操作出現死迴圈。於是為了避免hashmap的執行緒安全問題,concurrenthashmap應運而生。concurrenthas...
ConcurrentHashMap原理解析
concurrenthashmap是jdk提供的乙個執行緒安全的集合類,它內部的結構原理和我們常用的hashmap基本是一致,那我們可以先來認識一下hashmap,這樣基本上也能大致明白concurrenthashmap了。hashmap與concurrenthashmap都是用來存放一種鍵值對形式...
理解爬蟲原理
本次作業 於 1.簡單說明爬蟲原理 請求 並提取資料的自動化流程 2.理解爬蟲開發過程 1 簡要說明瀏覽器工作原理 web瀏覽器提交請求後,通過http協議傳送給web伺服器。web伺服器接到後,進行事務處理,處理結果又通過http傳回給web瀏覽器,從而在web瀏覽器上顯示出所請求 的頁面。2 使...