springCloud-LoadBalancer负载均衡

接上个博客springcloud-Eureka。

Eureka主要是如何通过eureka服务器进行服务注册与发现,也有简单的负载均衡,实际上它其中的负载均衡就是靠LoadBalancer实现的。
2020年前SpringCloud是采用Ribbon作为负载均衡实现,但是在2020后采用了LoadBalancer替代。

1.自定义负载均衡策略

LoadBalancer默认提供了两种负载均衡策略。
1.RandomLoadBalancer-随机分配策略
2.RoundRobinLoadBalancer-轮询分配策略(默认)

修改指定的负载均衡策略,创建配置类。
springCloud-LoadBalancer负载均衡_第1张图片
springCloud-LoadBalancer负载均衡_第2张图片
此时在访问user-service即采用随机访问的策略。

2.使用OpenFeign

Feign和RestTemplate一样,也是HTTP客户端请求工具,但是它的使用方式更加便捷。

2.1导入依赖

在borrow-service导入服务,因为只有borrow-service会调用其他服务。
springCloud-LoadBalancer负载均衡_第3张图片

2.2 在borrow-service启动类添加注解@EnableFeignClients

springCloud-LoadBalancer负载均衡_第4张图片
此时直接的config包下工具都不需要了,删掉即可。
springCloud-LoadBalancer负载均衡_第5张图片
springCloud-LoadBalancer负载均衡_第6张图片
springCloud-LoadBalancer负载均衡_第7张图片
springCloud-LoadBalancer负载均衡_第8张图片
此时调用和下方图片效果一样
springCloud-LoadBalancer负载均衡_第9张图片
同理,针对book-service
springCloud-LoadBalancer负载均衡_第10张图片
修改template调用方式
springCloud-LoadBalancer负载均衡_第11张图片
依旧可以访问
springCloud-LoadBalancer负载均衡_第12张图片
需要源文件可关注并在下方扣1,会私发。

你可能感兴趣的:(springCloud,spring,cloud,负载均衡,spring)