一、Feign简介
Feign是一个声明式的伪Http客户端,它使得写Http客户端变得更简单。使用Feign,只需要创建一个接口并注解。它具有可插拔的注解特性,可使用Feign 注解和JAX-RS注解。Feign支持可插拔的编码器和解码器。Feign默认集成了Ribbon,并和Eureka结合,默认实现了负载均衡的效果。
简而言之:
- Feign 采用的是基于接口的注解
 - Feign 整合了ribbon
 
二 集成openfeign
2.1 导入jar
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency> 
2.2 修改配置文件
添加如下内容:
#设置feign开启hystrix(服务保护)
feign:
  hystrix:
    enabled: true
# 远程访问地址
order:
  url: http://localhost:9002/order_api 
2.3 启动类增加注解:@EnableFeignClients
2.4 增加调用类:

专业名词解释:
name:来源于调用服务的application名称,如下所示:

url:提供者服务的url
远程接口如下:

三 集成Histric
导入jar包:
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-netflix-hystrix</artifactId>
    <version>2.2.1.RELEASE</version>
</dependency> 
启动类增加注解:
@EnableHystrix 

新建类,实现

 
至此,服务搭建完毕,当order服务掉线以后,可快速返回失败信息,让接口不在等待


















