如何将Spring Circuit Breaker与Cache Manager结合使用?

我已经看到许多在服务方法上使用Netflix @HystrixCommand之类的示例的例子,但是在使用一个或多个CacheManager实例时是否可以启用断路器?换句话说,如果基础服务在一段时间内不可用或不稳定,请绕过Spring缓存。

具体来说,在使用Spring Cache时,我们只是有一个用@Cacheable注释的方法。通常,对于断路器,您指定一个后备,但我们的后备是“不要使用缓存,只需正常执行我们的方法即可”。我们如何使用注释来实现呢?我们是否需要重构代码以分隔CacheManager调用?

z156578453 回答:如何将Spring Circuit Breaker与Cache Manager结合使用?

我认为您应该编写一个自定义的缓存管理器并在其中编写断路器逻辑。

@Component 公共CacheManager CustomCacheManager实现CacheManager {

@Override
public Cache getCache(String s) {
    return null;
}

@Override
public Collection<String> getCacheNames() {
    return null;
}

}

本文链接:https://www.f2er.com/3143245.html

大家都在问