SpringCloud之OpenFeign

SpringCloud之openFeign

Spring Cloud的子项目之一,Spring Cloud OpenFeign以将OpenFeign集成到Spring Boot应用中的方式,为微服务架构下服务之间的调用提供了解决方案。

首先,利用了OpenFeign的声明式方式定义Web服务客户端;其次还更进一步,通过集成Ribbon或Hystrix实现负载均衡和服务容错的HTTP客户端。

相比与Ribbon和RestTemple 在cloud项目中的运用。feign的好处是及其明显的,至少提供了服务的统一管理

 

既可以根据ribbon和hystrix和配置来配置

ribbon:
  ReadTimeout: 3000
#  ConnectTimeout: 3000
#  MaxAutoRetries: 1 #同一台实例最大重试次数,不包括首次调用
#  MaxAutoRetriesNextServer: 1 #重试负载均衡其他的实例最大重试次数,不包括首次调用
#  OkToRetryOnAllOperations: false  #是否所有操作都重试
# 可以使用feign配置 配置类为FeignClientProperties
#hystrix的超时时间
hystrix:
  command:
    default:
      execution:
        timeout:
          enabled: true
        isolation:
          thread:
            timeoutInMilliseconds: 9000

  

也可以使用feign自己的配置

 
feign:
  client:
    config:
      feignName:
        connectTimeout: 5000
        readTimeout: 5000
        loggerLevel: full
        errorDecoder: com.example.SimpleErrorDecoder
        retryer: com.example.SimpleRetryer
        requestInterceptors:
          - com.example.FooRequestInterceptor
          - com.example.BarRequestInterceptor
        decode404: false

  

posted @ 2020-01-16 21:06  1994的地铁  阅读(256)  评论(0编辑  收藏  举报