Fegin远程接口的使用

SpringCloud Fegin默认已为Feign 整合了hystrix,所以添加Feign依赖后就不用添加hystrix,那么怎么才能让Feign的熔断机制生效呢,只要按以下步骤发:

feign:    # 默认是false 谁调用谁加这个配置 一般都是在加(消费者哪里)
  hystrix:
    enabled: true  # 这里开启熔断机制

写一个子类来继承这个远程接口:只要远程接口出现问题都会来执行这里的方法,最后展示熔断

最后还要在这里加上一个属性,这个fallback = 这个子类的.class文件来使用的 就不会在调用生产者的代码继续执行了

这个技术的缺点是:没有页面看数据

openfeign 
1.使用的话就要导入一个依赖
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>
2. 写一个接口 加上一个注解 里面的参数是 注册中心 springboot 项目的名字 这样就可以更好的去调用生产者的方法

在旧版本的Spring中,您可以手动添加Feign作为项目的依赖项,并编写配置来使用Feign。以下是一些基本的步骤: 1. 添加Feign依赖项:在您的项目中添加Feign的依赖项,例如: ```xml <dependency> <groupId>io.github.openfeign</groupId> <artifactId>feign-core</artifactId> <version>10.6.1</version> </dependency> ``` 2. 创建Feign客户端接口:创建一个接口,该接口使用@FeignClient注解,并定义远程服务的名称和URL,例如: ```java @FeignClient(name = "my-service", url = "http://localhost:8080") public interface MyServiceClient { @GetMapping("/hello") String sayHello(); } ``` 3. 注入Feign客户端:在您的代码中使用@Autowired注解将Feign客户端注入到您的类中,例如: ```java @RestController public class MyController { @Autowired private MyServiceClient myServiceClient; @GetMapping("/greet") public String greet() { return "Hello, " + myServiceClient.sayHello(); } } ``` 这里的MyServiceClient是您定义的Feign客户端接口,您可以在其中定义远程服务的方法以及它们的参数和返回类型。在此示例中,我们定义了一个名为sayHello的方法,该方法将调用远程服务并返回其响应。 请注意,在旧版本的Spring中,您需要手动配置Feign客户端来使用Feign代理远程服务。具体来说,您需要为Feign客户端提供远程服务的URL和可选的身份验证信息。如果您使用的是Spring Boot应用程序,则可以使用Spring Cloud Starter Feign作为依赖项,它会自动配置Feign客户端并为您处理所有细节。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值