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

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

Dalston及更低版本

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

Spring Cloud Edgware新特性:Zuul回退的改进_第1张图片

Spring Cloud Edgware新特性:Zuul回退的改进_第2张图片

Java

Edgware及更高版本

Spring Cloud Edgware新特性:Zuul回退的改进_第3张图片

Spring Cloud Edgware新特性:Zuul回退的改进_第4张图片

Java

分析

由代码可知:

  • Dalston及更低版本通过实现 ZuulFallbackProvider 接口,从而实现回退;

  • Edgware及更高版本通过实现 FallbackProvider 接口,从而实现回退。

  • 在Edgware中:

  • FallbackProvider是ZuulFallbackProvider的子接口。

  • ZuulFallbackProvider已经被标注 Deprecated,很可能在未来的版本中被删除。

  • FallbackProvider接口比ZuulFallbackProvider多了一个 ClientHttpResponse

  • fallbackResponse(Throwablecause);方法,使用该方法,可获得造成回退的原因。

你可能感兴趣的:(java)