介绍
在Spring cloud有两种服务调用方式,一种是ribbon+restTemplate,另一种是feign,feign注解化更方便使用。 ribbon是一个负载均衡客户端,可以很好的控制http和tcp的一些行为。Feign默认集成了ribbon。RestTemplate中 @LoadBalanced表明这个restRemplate开启负载均衡的功能。
Feign
1,添加依赖
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency
2,在启动类上添加注解
@EnableFeignClients
3,写一个接口,用来声明调用哪个方法
/**
* @FeignClient(name = "product")是访问的服务的名称
* @GetMapping("/msg")这是调用服务的接口
*/
@FeignClient(name = "product")
public interface ProductClient {
@GetMapping("/msg")
String productMsg();
}
4,在controller中调用接口
@Autowired
private ProductClient productClient;
@GetMapping("/getMs