Spring Clould 负载均衡 - Ribbon

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

Ribbon-负载均衡原理(P14)

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

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

具体工作流程

具体代码

拦截http请求

进入Ribbon

执行

获取服务列表

选择负载均衡机制

返回

根据负载均衡机制选择注册的服务

Ribbon-负载均衡策略(P15)

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

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

方式2,是指定的服务使用此规则

Ribbon-饥饿加载(P16)

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

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

多个时要这样指定:

总结:

相关推荐
wjs20243 分钟前
MongoDB 更新集合名
开发语言
monkey_meng7 分钟前
【遵守孤儿规则的External trait pattern】
开发语言·后端·rust
草莓base19 分钟前
【手写一个spring】spring源码的简单实现--bean对象的创建
java·spring·rpc
legend_jz32 分钟前
【Linux】线程控制
linux·服务器·开发语言·c++·笔记·学习·学习方法
drebander44 分钟前
使用 Java Stream 优雅实现List 转化为Map<key,Map<key,value>>
java·python·list
乌啼霜满天2491 小时前
Spring 与 Spring MVC 与 Spring Boot三者之间的区别与联系
java·spring boot·spring·mvc
tangliang_cn1 小时前
java入门 自定义springboot starter
java·开发语言·spring boot
程序猿阿伟1 小时前
《智能指针频繁创建销毁:程序性能的“隐形杀手”》
java·开发语言·前端
Grey_fantasy1 小时前
高级编程之结构化代码
java·spring boot·spring cloud
新知图书1 小时前
Rust编程与项目实战-模块std::thread(之一)
开发语言·后端·rust