欢迎光临散文网 会员登陆 & 注册

Spring Cloud Ribbon:负载均衡工具

2021-05-22 17:30 作者:自学Python的小姐姐呀  | 我要投稿

简介

Spring Cloud Ribbon是由Netflix公司推出的开源软件,是基于HTTP和TCP协议的,其主要功能是实现客户端软件的负载均衡算法。

    Spring Cloud中Ribbon就是基于Netflix公司的Ribbon实现的。它不需要单独部署,但是却存在于整个微服务中。前面学习的Eureka里面有Ribbon,后面学习的OpenFeign也是基于Ribbon实现的。


1、Ribbon原理

内部基于ILoadBalancer实现的(代码层面)。

的继承关系如下:

使用Ribbon工作原理:

    所有的项目都会注册到Eureka中,Eureka允许不同项目的spring.application.name是相同。当相同时会认为这些项目一个集群。所以同一个项目部署多次时都是设置应用程序名相同。

    Application Client会从Eureka中根据spring.application.name加载Application Service的列表。根据设定的负载均衡算法,从列表中取出一个URL,到此Ribbon的事情结束了。剩下的事情由程序员自己进行技术选型,选择一个HTTP协议工具,通过这个URL调用Application Service。

注意:以下事情和Ribbon没有关系的

Application Service注册到Eureka过程。这是Eureka的功能。

Application Client从Eureka取出注册列表。这是Eureka的功能。

Application Client 通过URL访问Application Service。具体实现可以自己进行选择使用哪个HTTP工具。

只有Application Client从Eureka中取出列表后进行负载均衡算法的过程和Ribbon有关系。


更多精彩知识可以去视频中探索哦~


有什么疑问快来讨论区讨论起来吧~



Spring Cloud Ribbon:负载均衡工具的评论 (共 条)

分享到微博请遵守国家法律