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),且要指定服务

多个时要这样指定:

总结:

相关推荐
山岚的运维笔记3 分钟前
SQL Server笔记 -- 第16章:MERGE
java·笔记·sql·microsoft·sqlserver
阿猿收手吧!4 分钟前
【C++】深入理解C++ Atomic内存序:解决什么问题?怎么用?
开发语言·c++
小白学大数据8 分钟前
Python爬虫实现无限滚动页面的自动点击与内容抓取
开发语言·爬虫·python·pandas
Andy Dennis8 分钟前
一文漫谈设计模式之创建型模式(一)
java·开发语言·设计模式
兩尛9 分钟前
c++遍历容器(vector、list、set、map
开发语言·c++
belldeep9 分钟前
Java:Tomcat 9 和 mermaid.min.js 10.9 上传.csv文件实现 Markdown 中 Mermaid 图表的渲染
java·tomcat·mermaid·去除flexmark
£漫步 云端彡11 分钟前
Golang学习历程【第十三篇 并发入门:goroutine + channel 基础】
开发语言·学习·golang
2301_7903009616 分钟前
C++与Docker集成开发
开发语言·c++·算法
AutumnorLiuu17 分钟前
C++并发编程学习(二)—— 线程所有权和管控
java·c++·学习
Demon_Hao17 分钟前
JAVA缓存的使用RedisCache、LocalCache、复合缓存
java·开发语言·缓存