1、在客户端添加依赖
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-ribbon</artifactId>
<version>2.1.1.RELEASE</version>
</dependency>
2、客户端代码
//启动类
@SpringBootApplication
@EnableDiscoveryClient
public class EurekaCliApplication {
public static void main(String[] args) {
SpringApplication.run(EurekaCliApplication.class, args);
}
@Bean
@LoadBalanced //添加注解支持负载均衡
public RestTemplate restTemplate(){
return new RestTemplate();
}
}
//调用类
@Autowired
private RestTemplate restTemplate;
@GetMapping("s")
public Object object(){
String s = restTemplate.getForObject("http://USER-SERVICE/user", String.class);
return s;
}
3、负载策略
默认是使用轮询的形式(按顺序挨个来)
我们也可以通过配置,来修改这个方式。
user-service: #指用户服务
ribbon:
NFLoadBalancerRuleClassName: com.netflix.loadbalancer.RandomRule //随机访问