首先添加实现负载均衡的ribbon依赖包
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-ribbon</artifactId>
</dependency>
配置RestTemplate,使用LoadBalanced(ribbon)注解实现负载均衡
//这里配置为bean,可直接用Autowired注入
@Bean
@LoadBalanced
RestTemplate restTemplate() {
return new RestTemplate();
}
控制层就可以直接注入restTemplate,需要注意的是,请求链接中client是微服务的 application.name,这个需要自行配置
spring:
application:
name: client
@Autowired
private RestTemplate restTemplate;
@GetMapping("/hello")
public String hello() {
String result = restTemplate.getForObject("http://client/home/hello", String.class);
return result;
}