【发布时间】:2016-05-02 09:26:52
【问题描述】:
使用断路器模式时,是否可以将所有外部服务调用包装在传递给.withCircuitBreaker() 的方法中,或者每个调用本身都应该传递给.withCircuitBreaker()?
例如。
// wrapped
def wrapper(param: T) : Future[Option[T]] = {
externalCall1(param)
externalCall2(param)
}
circuitBreaker.withCircuitBreaker(wrapper(someParam))
// one-by-one
circuitBreaker.withCircuitBreaker(externalCall1(param))
circuitBreaker.withCircuitBreaker(externalCall2(param))
更新:如果是 Web 服务,是否可以在 mainActorSystem 中注册断路器,或者我应该使用单独的 circuitBreakerActorSystem ?
【问题讨论】:
标签: web-services scala akka akka-http circuit-breaker