Class StandardHedgeShieldOptions

Namespace
Kevlar.Extensions.Http
Assembly
Kevlar.Extensions.Http.dll

Configures the standard HTTP hedging pipeline.

public sealed class StandardHedgeShieldOptions
Inheritance
StandardHedgeShieldOptions
Inherited Members

Constructors

StandardHedgeShieldOptions()

public StandardHedgeShieldOptions()

Properties

AttemptTimeout

Configures the timeout applied independently to each endpoint attempt. Defaults to 10 seconds. Set InfiniteTimeSpan to omit this stage.

public TimeoutOptions AttemptTimeout { get; set; }

Property Value

TimeoutOptions

CircuitBreaker

Configures the circuit breaker applied independently to each endpoint. Defaults to a 50% failure ratio over 30 seconds, with a minimum throughput of 10 and a 15-second break.

public CircuitBreakerOptions<HttpResponseMessage> CircuitBreaker { get; set; }

Property Value

CircuitBreakerOptions<HttpResponseMessage>

ConcurrencyLimit

Optionally configures a concurrency limiter applied independently to each endpoint. The limiter is disabled when this property is null.

public ConcurrencyLimitOptions? ConcurrencyLimit { get; set; }

Property Value

ConcurrencyLimitOptions

Handler

Configures request replay.

public ShieldHttpHandlerOptions Handler { get; set; }

Property Value

ShieldHttpHandlerOptions

Hedge

Configures hedged attempts. Defaults to one additional attempt after one second.

public HedgeOptions<HttpResponseMessage> Hedge { get; set; }

Property Value

HedgeOptions<HttpResponseMessage>

Routing

Optionally configures endpoint authorities and their ordering. When null, hedged attempts use the request's own authority in their natural order.

public HttpEndpointRoutingOptions? Routing { get; set; }

Property Value

HttpEndpointRoutingOptions

TotalTimeout

Configures the outer total timeout. Defaults to 30 seconds. Set InfiniteTimeSpan to omit this stage.

public TimeoutOptions TotalTimeout { get; set; }

Property Value

TimeoutOptions