1. 程式人生 > 其它 >springcloud Ribbon負載均衡

springcloud Ribbon負載均衡

關於負載均衡

負載均衡一般分為伺服器端負載均衡和客戶端負載均衡
所謂伺服器端負載均衡,比如Nginx、F5這些,請求到達伺服器之後由這些負載均衡器根據一定的演算法將請求路由到目標伺服器處理。
所謂客戶端負載均衡,比如我們要說的Ribbon,服務消費者客戶端會有一個伺服器地址列表,呼叫方在請求前通過一定的負載均衡演算法選擇一個伺服器進行訪問,負載均衡演算法的執行是在請求客戶端進行。
Ribbon是Netflix釋出的負載均衡器。
Eureka一般配合Ribbon進行使用,Ribbon利用從Eureka中讀取到服務資訊,在呼叫服務提供者提供的服務時,會根據一定的演算法進行負載。

Ribbon負載均衡策略

圖中核⼼是負載均衡管理器LoadBalancer(總的協調者,相當於⼤腦,為了做事情,協調四肢),圍繞它周圍的多有IRule、IPing等
IRule:是在選擇例項的時候的負載均衡策略物件
IPing:是⽤來向服務發起⼼跳檢測的,通過⼼跳檢測來判斷該服務是否可⽤
ServerListFilter:根據⼀些規則過濾傳⼊的服務例項列表
ServerListUpdater:定義了⼀系列的對服務列表的更新操作