Spring Cloud Edgware新特性:Zuul回退的改进

  • Post author:
  • Post category:其他


Spring Cloud Edgware对Hystrix回退的逻辑进行了一些改进。本文将信息探讨新旧版本的回退操作,并分析的原因及改进后的优势。

Dalston及更低版本

对于Dalston及更低版本,要想为Zuul提供回退,只需编写代码如下:

Spring Cloud Edgware新特性:Zuul回退的改进

Spring Cloud Edgware新特性:Zuul回退的改进

Java

Edgware及更高版本

Spring Cloud Edgware新特性:Zuul回退的改进

Spring Cloud Edgware新特性:Zuul回退的改进

Java

分析

由代码可知:

  • Dalston及更低版本通过实现

    ZuulFallbackProvider

    接口,从而实现回退;

  • Edgware及更高版本通过实现

    FallbackProvider

    接口,从而实现回退。

  • 在Edgware中:

  • FallbackProvider是ZuulFallbackProvider的子接口。

  • ZuulFallbackProvider已经被标注

    Deprecated

    ,很可能在未来的版本中被删除。

  • FallbackProvider接口比ZuulFallbackProvider多了一个

    ClientHttpResponse


  • fallbackResponse(Throwablecause);

    方法,使用该方法,


    可获得造成回退的原因。