1. 程式人生 > >Zookeeper 實現負載均衡

Zookeeper 實現負載均衡

原理解析
        架構圖                每臺WorkServer啟動的時候都會到Server建立臨時節點。        每臺ClientServer啟動的時候,都會到Server節點下面取得所有WorksServer節點,並通過一定演算法取得一臺並與之連線。       服務端主體流程                有ClientServer與之建立連線,這臺WorksServer的負載計數器加一,斷開連線負載計數器減一。負載計數器作為客戶端負載均衡演算法的依據,客戶端會選擇負載最輕的WorksServer建立連線。
客戶端流程                服務端核心類
                ServerRunner 排程類         RegistProvider 服務端啟動時的註冊過程        ServerHander 處理與客戶端之間的連線        DefaultBalanceUpdateProvider 連線建立與斷開,修改負載資訊       客戶端核心類                ClientRunner 排程類        ClientHander 處理與伺服器之間的通訊        BanceProvider 負載的演算法        ServerData 伺服器和客戶端公用的類,計算負載等使用