Class ResilienceOptions
Network.Resilience options related to Tableau connections.
Inheritance
Namespace: Tableau.Migration.Config
Assembly: Tableau.Migration.dll
Syntax
public class ResilienceOptions
Properties
ClientThrottleEnabled
Indicates if we limit the number requests to a given endpoint or not.
The default value is disabled.
Declaration
public bool ClientThrottleEnabled { get; set; }
Property Value
| Type | Description |
|---|---|
| bool |
ConcurrentRequestsLimitEnabled
Indicates if we limit the number of concurrent requests or not. The default value is disabled.
Declaration
public bool ConcurrentRequestsLimitEnabled { get; set; }
Property Value
| Type | Description |
|---|---|
| bool |
ConcurrentWaitingRequestsOnQueue
Indicates the amount of global concurrent request that will be waiting on the queue for a free concurrent slot. The default value is (the number of logical processors) /4.
Declaration
public int ConcurrentWaitingRequestsOnQueue { get; set; }
Property Value
| Type | Description |
|---|---|
| int |
MaxConcurrentRequests
Limits the amount of global concurrent requests at any given time.
The default value is
(the number of logical processors)
/2.
Declaration
public int MaxConcurrentRequests { get; set; }
Property Value
| Type | Description |
|---|---|
| int |
MaxPublishRequests
Limits the amount of push requests in for the Client Throttle. The default value is 5500.
Declaration
public int MaxPublishRequests { get; set; }
Property Value
| Type | Description |
|---|---|
| int |
MaxPublishRequestsInterval
Indicates the period for the Push Request Throttle. The default value is one day.
Declaration
public TimeSpan MaxPublishRequestsInterval { get; set; }
Property Value
| Type | Description |
|---|---|
| TimeSpan |
MaxReadRequests
Limits the amount of read requests in for the Client Throttle. The default value is 40000.
Declaration
public int MaxReadRequests { get; set; }
Property Value
| Type | Description |
|---|---|
| int |
MaxReadRequestsInterval
Indicates the period for the Read Request Throttle. The default value is one hour.
Declaration
public TimeSpan MaxReadRequestsInterval { get; set; }
Property Value
| Type | Description |
|---|---|
| TimeSpan |
PerFileTransferRequestTimeout
Indicates the Per-FileTransferRequest Timeout. The default value is 12 hours.
Declaration
public TimeSpan PerFileTransferRequestTimeout { get; set; }
Property Value
| Type | Description |
|---|---|
| TimeSpan |
PerRequestTimeout
Indicates the Per-Request Timeout. The default value is 30 minutes.
Declaration
public TimeSpan PerRequestTimeout { get; set; }
Property Value
| Type | Description |
|---|---|
| TimeSpan |
RetryEnabled
Indicates if we retry requests in case of errors or not.
Declaration
public bool RetryEnabled { get; set; }
Property Value
| Type | Description |
|---|---|
| bool |
RetryIntervals
Indicates the intervals between each retry. The default value is 5 retries (0.5 sec, 0.5 sec, 0.5 sec, 1 sec, 2 secs). This configuration depends on RetryEnabled and RetryOverrideResponseCodes.
Declaration
public TimeSpan[] RetryIntervals { get; set; }
Property Value
| Type | Description |
|---|---|
| TimeSpan[] |
RetryOverrideResponseCodes
Indicates the overridden response codes that will be retried. This configuration is empty as default. The default System.Net.HttpStatusCodes configured to be handled are: • HTTP 5XX status codes(server errors) • HTTP 408 status code(request timeout) In the case you want to retry only to a specific response code, set this configuration override. This configuration depends on RetryEnabled and RetryIntervals.
Declaration
public int[] RetryOverrideResponseCodes { get; set; }
Property Value
| Type | Description |
|---|---|
| int[] |
ServerThrottleEnabled
Gets or sets whether to wait and retry on server throttle responses. The default value is enabled. There is no limit to the number of retries from server throttle responses. ServerThrottleRetryIntervals is used to determine the length of time between retries. If no Retry-After header is supplied by the server, with the last retry interval used if the retry count exceeds the retry interval count.
Declaration
public bool ServerThrottleEnabled { get; set; }
Property Value
| Type | Description |
|---|---|
| bool |
ServerThrottleLimitRetries
Gets or sets whether to limit the number of retries on server throttle responses. The default value is false. If true the last retry interval of ServerThrottleRetryIntervals is not re-used.
Declaration
public bool ServerThrottleLimitRetries { get; set; }
Property Value
| Type | Description |
|---|---|
| bool |
ServerThrottleRetryIntervals
Indicates the intervals between each retry during server throttling. This value is only used when the server does not supply a Retry-After header. If ServerThrottleLimitRetries is false (the default) the last retry interval is used if the retry count exceeds the retry interval count.
Declaration
public TimeSpan[] ServerThrottleRetryIntervals { get; set; }
Property Value
| Type | Description |
|---|---|
| TimeSpan[] |