ExponentialRetry クラス

指数再試行。

指数再試行オブジェクトを構築します。 initial_backoffは、最初の再試行に使用されます。 以降の再試行は、initial_backoff + increment_power^retry_count 秒後に再試行されます。

継承
azure.storage.queue._shared.policies.StorageRetryPolicy
ExponentialRetry

コンストラクター

ExponentialRetry(initial_backoff: int = 15, increment_base: int = 3, retry_total: int = 3, retry_to_secondary: bool = False, random_jitter_range: int = 3, **kwargs: Any)

パラメーター

名前 説明
initial_backoff
int

最初の再試行の最初のバックオフ間隔 (秒単位)。

既定値: 15
increment_base
int

最初の再試行後に initial_backoff をインクリメントするベース (秒単位)。

既定値: 3
retry_total
int

再試行の最大数。

既定値: 3
retry_to_secondary

要求をセカンダリに再試行する必要があるかどうか (可能な場合)。 これは、RA-GRS アカウントのみが使用され、古いデータを処理できる可能性がある場合にのみ有効にする必要があります。

既定値: False
random_jitter_range
int

バックオフ間隔のジッター/ランダム化の範囲を示す秒数。 たとえば、random_jitter_rangeが 3 の場合、バックオフ間隔 x は x+3 と x-3 の間で変化します。

既定値: 3

メソッド

configure_retries
get_backoff_time

再試行するまでのスリープ時間を計算します。

increment

再試行カウンターをインクリメントします。

Dict[str, Any]] 設定: インクリメント操作に関連する構成可能な値。 :p aram PipelineRequest 要求: パイプライン要求オブジェクト。 :p aram Optional[PipelineResponse] 応答: パイプライン応答オブジェクト。 :p aram エラー: 要求中にエラーが発生しました。

応答が正常に受信された場合はなし。

send
sleep

configure_retries

configure_retries(request: PipelineRequest) -> Dict[str, Any]

パラメーター

名前 説明
request
必須

get_backoff_time

再試行するまでのスリープ時間を計算します。

get_backoff_time(settings: Dict[str, Any]) -> float

パラメーター

名前 説明
settings
必須
Dict[str, Any]]

取得バックオフ時間に関連する構成可能な値。

戻り値

説明

要求を再試行するまでの待機時間を示す float、または再試行を実行する必要がないことを示す None。

increment

再試行カウンターをインクリメントします。

Dict[str, Any]] 設定: インクリメント操作に関連する構成可能な値。 :p aram PipelineRequest 要求: パイプライン要求オブジェクト。 :p aram Optional[PipelineResponse] 応答: パイプライン応答オブジェクト。 :p aram エラー: 要求中にエラーが発生しました。

応答が正常に受信された場合はなし。

increment(settings: Dict[str, Any], request: PipelineRequest, response: PipelineResponse | None = None, error: AzureError | None = None) -> bool

パラメーター

名前 説明
settings
必須
request
必須
response
既定値: None
error
既定値: None

戻り値

説明

再試行が使い果たされているかどうか。

send

send(request)

パラメーター

名前 説明
request
必須

sleep

sleep(settings, transport)

パラメーター

名前 説明
settings
必須
transport
必須

属性

connect_retries

接続再試行の最大数。

connect_retries: int

increment_base

最初の再試行後に initial_backoff をインクリメントするベース (秒単位)。

increment_base: int

initial_backoff

最初の再試行の最初のバックオフ間隔 (秒単位)。

initial_backoff: int

next

次のポリシーまたはトランスポート (ポリシーとしてラップ) へのポインター。 パイプラインの作成時に設定されます。

next: HTTPPolicy[HTTPRequestType, HTTPResponseType]

random_jitter_range

バックオフ間隔のジッター/ランダム化の範囲を示す秒数。

random_jitter_range: int

retry_read

読み取り再試行の最大数。

retry_read: int

retry_status

状態の再試行の最大数。

retry_status: int

retry_to_secondary

セカンダリ エンドポイントを再試行する必要があるかどうか。

retry_to_secondary: bool

total_retries

再試行の最大数。

total_retries: int