[TOC]
# Ribbon
* RestTemplate
* Feign
* Zuul
負載均衡核心:
1. 服務發現
2. 服務選擇規則
3. 服務監聽
主要組件
* ServerList
* IRule
* ServerListFilter
*****
# Feign
*****
# Feign與Ribbo區別
```
Ribbon和Feign都是用于調用其他服務的,不過方式不同。
1.啟動類使用的注解不同,Ribbon用的是@RibbonClient,Feign用的是@EnableFeignClients。
2.服務的指定位置不同,Ribbon是在@RibbonClient注解上聲明,Feign則是在定義抽象方法的接口中使用@FeignClient聲明。
3.調用方式不同,Ribbon需要自己構建http請求,模擬http請求然后使用RestTemplate發送給其他服務,步驟相當繁瑣。
? Feign則是在Ribbon的基礎上進行了一次改進,采用接口的方式,將需要調用的其他服務的方法定義成抽象方法即可,
? 不需要自己構建http請求。不過要注意的是抽象方法的注解、方法簽名要和提供服務的方法完全一致
```