Spring Clould 负载均衡 - Ribbon

 视频地址:微服务(SpringCloud+RabbitMQ+Docker+Redis+搜索+分布式) 

 Ribbon-负载均衡原理(P14)

具体实现时通过@LoaBalanced注解实现,表示RestTemplate要被Ribbon拦截处理

orderservice调用user时候,会先发送请求到Ribbon,Ribbon会到Eureka查询注册的user服务,查询到后再通过 Ribbon负载均衡选择调用具体的服务。

Spring Clould 负载均衡 - Ribbon_第1张图片

 具体工作流程

Spring Clould 负载均衡 - Ribbon_第2张图片

 具体代码Spring Clould 负载均衡 - Ribbon_第3张图片

 拦截http请求Spring Clould 负载均衡 - Ribbon_第4张图片

 进入RibbonSpring Clould 负载均衡 - Ribbon_第5张图片

 执行Spring Clould 负载均衡 - Ribbon_第6张图片

 获取服务列表

 选择负载均衡机制Spring Clould 负载均衡 - Ribbon_第7张图片

Spring Clould 负载均衡 - Ribbon_第8张图片

返回

Spring Clould 负载均衡 - Ribbon_第9张图片

 根据负载均衡机制选择注册的服务Spring Clould 负载均衡 - Ribbon_第10张图片

 Ribbon-负载均衡策略(P15)

Spring Clould 负载均衡 - Ribbon_第11张图片

Spring Clould 负载均衡 - Ribbon_第12张图片

 定义自己想使用的IRule 2种规则

方式1,是全局都使用此规则

方式2,是指定的服务使用此规则 Spring Clould 负载均衡 - Ribbon_第13张图片

 Ribbon-饥饿加载(P16)

 第一次访问时耗时会较长,是因为第一次访问才会创建LoadBalanceClient

Spring Clould 负载均衡 - Ribbon_第14张图片

 可以通过配置文件形式配置成饥饿加载(项目启动时就创建LoadBalanceClient),且要指定服务

多个时要这样指定: 

Spring Clould 负载均衡 - Ribbon_第15张图片 总结:Spring Clould 负载均衡 - Ribbon_第16张图片

你可能感兴趣的:(spring,clould,java,开发语言)