loadbalancer 引入与使用

在消费中pom中引入

复制代码
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-loadbalancer</artifactId>
</dependency>

请求调用加+ @LoadBalanced 注解

进行服务调用

默认负载均衡是轮训模式

想要切换为随机模式需要重写restTemplate

@Configuration
@LoadBalancerClient(
//下面的value值大小写一定要和consul**里面的名字一样,必须一样value = "cloud-payment-service" ,configuration = RestTemplateConfig.class)
public classRestTemplateConfig
{
@Bean
@LoadBalanced //使用@LoadBalanced注解赋予RestTemplate**负载均衡的能力
publicRestTemplate restTemplate(){
return newRestTemplate();
}

@Bean
ReactorLoadBalancer<ServiceInstance> randomLoadBalancer(Environment environment,
LoadBalancerClientFactory loadBalancerClientFactory) {
String name = environment.getProperty(LoadBalancerClientFactory.PROPERTY_NAME);

return newRandomLoadBalancer(loadBalancerClientFactory.getLazyProvider(name, ServiceInstanceListSupplier.class), name);
}
}

相关推荐
PHASELESS41125 分钟前
Java堆结构深度解析:原理、实现与应用全指南
java·开发语言·数据结构
DreamBoat_Onism25 分钟前
JVM 内存调优
java·jvm·后端
顺天gie32 分钟前
idea中提高编译速度研究
java·spring boot·intellij-idea
异常君1 小时前
深入 JVM:线程池源码剖析与性能调优全攻略
java·jvm·后端
Light___mmm1 小时前
注入Java Bean的方式
java
xcLeigh1 小时前
HTML5好看的水果蔬菜在线商城网站源码系列模板4
java·前端·源码·html5
醉卧雕龙舫 、1 小时前
二.springBoot项目集成ElasticSearch及使用
spring boot·elasticsearch
罗政1 小时前
AI工具箱源码+成品网站源码+springboot+vue
vue.js·人工智能·spring boot
烟沙九洲1 小时前
算法的时间复杂度
java·算法
写bug写bug2 小时前
小小 Stream,一篇文章拿捏它
java·后端