客戶端負(fù)載均衡簡(jiǎn)介
關(guān)于客戶端負(fù)載均衡在“LB與服務(wù)發(fā)現(xiàn)”章節(jié)已做過(guò)介紹
4.2.Ribbon簡(jiǎn)介
Ribbon是Netflix 發(fā)布的開源項(xiàng)目邻吞,主要功能是提供客戶端的軟件負(fù)載均衡算法,將Netflix的中間層服務(wù)連接在一起葫男。Ribbon客戶端組 件提供一系列完善的配置項(xiàng)如連接超時(shí)抱冷,重試等。簡(jiǎn)單的說(shuō)梢褐,就是在配置文件中列出Load Balancer后面所有的機(jī)器旺遮,Ribbon會(huì)自動(dòng)的幫助你基于某種規(guī)則(如簡(jiǎn)單輪詢赵讯,隨即連接等)去連接這些機(jī)器。我們也很容易使用Ribbon實(shí)現(xiàn) 自定義的負(fù)載均衡算法耿眉。
圖片.png
圖(10)ribbon工作原理圖
Ribbon客戶端組件提供一系列完善的配置選項(xiàng)边翼,比如連接超時(shí)、重試鸣剪、重試算法等组底。Ribbon內(nèi)置可插拔、可定制的負(fù)載均衡組件筐骇。
下面是用到的一些負(fù)載均衡策略:
- 簡(jiǎn)單輪詢負(fù)載均衡
- 加權(quán)響應(yīng)時(shí)間負(fù)載均衡
- 區(qū)域感知輪詢負(fù)載均衡
- 隨機(jī)負(fù)載均衡
Ribbon中還包括以下功能:
- 易于與服務(wù)發(fā)現(xiàn)組件(比如Netflix的Eureka)集成
- 使用Archaius完成運(yùn)行時(shí)配置
- 使用JMX暴露運(yùn)維指標(biāo)债鸡,使用Servo發(fā)布
- 多種可插拔的序列化選擇
- 異步和批處理操作(即將推出)
- 自動(dòng)SLA框架(即將推出)
- 系統(tǒng)管理/指標(biāo)控制臺(tái)(即將推出)