Ribbon 与 Nginx 区别
服務器端負載均衡 Nginx
nginx 是客戶端所有請求統一交給 nginx,由 nginx 進行實現負載均衡請求轉發,屬于服務器端負載均衡。
既請求由 nginx 服務器端進行轉發。
客戶端負載均衡 Ribbon
Ribbon 是從 eureka 注冊中心服務器端上獲取服務注冊信息列表,緩存到本地,然后在本地實現輪詢負載均衡策略。
既在客戶端實現負載均衡。
應用場景的區別:
Nginx 適合于服務器端實現負載均衡 比如 Tomcat ,Ribbon 適合與在微服務中 RPC 遠程調用實現本地服務負載均衡,比如 Dubbo、SpringCloud 中都是采用本地負載均衡。
補充:ribbon和feign的區別(轉)
spring cloud的Netflix中提供了兩個組件實現軟負載均衡調用:ribbon和feign。
Ribbon
是一個基于 HTTP 和 TCP 客戶端的負載均衡器
它可以在客戶端配置 ribbonServerList(服務端列表),然后輪詢請求以實現均衡負載。
Feign
Spring Cloud Netflix 的微服務都是以 HTTP 接口的形式暴露的,所以可以用 Apache 的 HttpClient 或 Spring 的 RestTemplate 去調用,而 Feign 是一個使用起來更加方便的 HTTP 客戶端,使用起來就像是調用自身工程的方法,而感覺不到是調用遠程方法。
轉自
個人理解:nginx將各種請求分發到不同的服務器(tomcat等)
ribbon則是決定某個具體請求使用這個請求所對應的眾多微服務中的哪一個微服務
總結
以上是生活随笔為你收集整理的Ribbon 与 Nginx 区别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Redis基本操作
- 下一篇: 分享一篇竞品分析报告