Feign声明式远程调用

一、简介

Feign是一个声明式的HTTP客户端,它的目的就是让远程调用更加简单。Feign提供了HTTP请求的模板,通过编写简单的接口和插入注解,就可以定义好HTTP请求的参数、格式、地址等信息。

Feign整合了Ribbon(负载均衡)和Hystrix(服务熔断),可以让我们不再需要显示地使用这两个组件。

SpringCloudFeignNetflixFeign的基础上扩展了对SpringMVC注解的支持,在其实现下,我们只需要创建一个接口并用注解的方式来配置它,即可完成对服务提供的接口绑定。简化了SpringCloudRibbon自行封装服务调用客户端的开发量。

二、使用

1、消费者服务者都引入依赖

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>

2、消费者开启feign功能

@EnableFeignClients("com.atguigu.gulimall.member.feign")

3、消费者声明远程接口

@FeignClient("gulimall-coupon")
public interface CouponFeignService {
    @RequestMapping("/coupon/coupon/member")
    public R member();
}

消费者访问服务者调用成功。

原文地址:https://www.cnblogs.com/wangdahui/p/13531760.html