本文為原創文章,轉載請註明出處,謝謝 負載均衡 1、原理 服務端啟動創建臨時節點(下圖中servers下節點),臨時節點數據包含負載信息 客戶端啟動獲取伺服器列表,並根據負載去連接一個負載較輕的伺服器 服務端每次接收到客戶端的連接,添加自己的負載,客戶端斷開與自己的連接則減少自己的負載 2、架構圖 ...
本文為原創文章,轉載請註明出處,謝謝
負載均衡
1、原理
- 服務端啟動創建臨時節點(下圖中servers下節點),臨時節點數據包含負載信息
- 客戶端啟動獲取伺服器列表,並根據負載去連接一個負載較輕的伺服器
- 服務端每次接收到客戶端的連接,添加自己的負載,客戶端斷開與自己的連接則減少自己的負載
2、架構圖
- Servers:伺服器列表父節點
- work Server n :伺服器節點
- Client n:客戶端節點
3、客戶端流程圖
4、服務端流程圖
5、客戶端核心類
- clientRunner:客戶端調用入口
- Client:客戶端執行介面
- ClientImpl:客戶端執行實現
- ClientHandler:連接伺服器進行調用處理
- BalanceProvider:負載均衡計算介面
- AabstractBalanceProvider:負載均衡計算抽象類
- DefaultBalanceProvider:預設負載均衡演算法實現
- ServerData:服務端數據信息
6、服務端核心類
- ServerRunner:服務端調用入口
- Server:服務端執行介面
- ServerImpl:服務端執行實現
- ServerHandler:服務端負載處理類
- BalanceUpdateProvider:服務端負載更新介面
- DefaultBalanceUpdateProvider:預設服務端更新實現
- RegistProvider:註冊服務端節點介面
- DefaultRegistProvider:預設註冊服務端節點實現
- ZookeeperRegistContext:zookeeper節點註冊實現類