Hello developers, I'm a developer from China and I'm starting to learn how to use openfeign, due to the version upgrade, there are some changes in the way I use it and when I set the fallback, it doesn't work anymore, I'd like to get some help, thanks.

env:

        <java.version>11</java.version>
        <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>2020.0.2<version>
                <type>pom</type>
                <scope>import</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-openfeign</artifactId>
           <version>3.0.2</version>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-loadbalancer</artifactId>
            <version>3.0.2</version>
        </dependency>
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
            <version>2021.1</version>
        </dependency>

config

#feign-config
feign:
  compression:
    request:
      enabled: true
      mime-types: text/xml,application/xml,application/json
      min-request-size: 2048 
    response:
      enabled: true
  client:
    config:
      default:
        connectTimeout: 5000
        readTimeout: 5000
        loggerLevel: basic

code:
ArticleController.java

@Autowired
private FileFeignService fileFeignService;
@GetMapping("/test")
    public ResponseEntity<String> test(String name) {
        return fileFeignService.test(name);
    }

FileFeignService.java

@FeignClient(value = "files", contextId = "file-test",fallback = FileFeignServiceFallbackImpl.class)
public interface FileFeignService {
    /**
     * test
     * @param name test
     * @return test
     */
    @GetMapping("/test")
    ResponseEntity<String> test(@RequestParam(value = "name") String name);
}

FileFeignServiceFallbackImpl.java

@Component
public class FileFeignServiceFallbackImpl implements FileFeignService {
    @Override
    public ResponseEntity<String> test(String name) {
        return ResponseEntity.badRequest().body("fail");
    }
}

files is service-provider,article is service-cusumer
When the article service is started and the file service is not started, I think fallback should be called, but loadbalancer reports an error and does not execute the fallback
exception

feign.FeignException$ServiceUnavailable: [503] during [GET] to [http://files/test?name=1] [FileFeignService#test(String)]: [Load balancer does not contain an instance for the service files]
    at feign.FeignException.serverErrorStatus(FeignException.java:237) ~[feign-core-10.10.1.jar:na]
    at feign.FeignException.errorStatus(FeignException.java:180) ~[feign-core-10.10.1.jar:na]
    at feign.FeignException.errorStatus(FeignException.java:169) ~[feign-core-10.10.1.jar:na]
    at feign.codec.ErrorDecoder$Default.decode(ErrorDecoder.java:92) ~[feign-core-10.10.1.jar:na]
    at feign.AsyncResponseHandler.handleResponse(AsyncResponseHandler.java:96) ~[feign-core-10.10.1.jar:na]
    at feign.SynchronousMethodHandler.executeAndDecode(SynchronousMethodHandler.java:138) ~[feign-core-10.10.1.jar:na]
    at feign.SynchronousMethodHandler.invoke(SynchronousMethodHandler.java:89) ~[feign-core-10.10.1.jar:na]
    at feign.ReflectiveFeign$FeignInvocationHandler.invoke(ReflectiveFeign.java:100) ~[feign-core-10.10.1.jar:na]
    at com.sun.proxy.$Proxy90.test(Unknown Source) ~[na:na]
    at cn.beichenhpy.controller.ArticleController.test(ArticleController.java:42) ~[classes/:na]
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:na]
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]
    at java.base/java.lang.reflect.Method.invoke(Method.java:566) ~[na:na]
    at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:197) ~[spring-web-5.3.6.jar:5.3.6]
    ...

I would like to know if it is my dependency conflict or my configuration is wrong, I hope to get your reply, thank you very much!

Comment From: beichenhpy

I should have known better, I didn't use a breaker like hystrix or Sentinel

Comment From: beichenhpy

My bad, I know why it didn't work because feign.circuitbreaker.enabled=true was not used https://docs.spring.io/spring-cloud-openfeign/docs/current/reference/html/#spring-cloud-feign-circuitbreaker THX