ExponentialRetry 類別
指數重試。
建構指數重試物件。 第一次重試會使用initial_backoff。 後續重試會在 initial_backoff + increment_power^retry_count 秒之後重試。
- 繼承
-
azure.storage.queue._shared.policies.StorageRetryPolicyExponentialRetry
建構函式
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)
參數
名稱 | Description |
---|---|
initial_backoff
|
第一次重試的初始輪詢間隔,以秒為單位。 預設值: 15
|
increment_base
|
第一次重試之後,以秒為單位來遞增initial_backoff。 預設值: 3
|
retry_total
|
重試嘗試的次數上限。 預設值: 3
|
retry_to_secondary
|
如果能夠,是否應該將要求重試至次要。 這應該只能啟用 RA-GRS 帳戶,而且可能過時的資料可以處理。 預設值: False
|
random_jitter_range
|
以秒為單位的數位,表示要對退間隔進行抖動/隨機化的範圍。 例如,3 的random_jitter_range會導致輪詢間隔 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]
參數
名稱 | Description |
---|---|
request
必要
|
|
get_backoff_time
計算重試前的睡眠時間長度。
get_backoff_time(settings: Dict[str, Any]) -> float
參數
名稱 | Description |
---|---|
settings
必要
|
與取得輪詢時間相關的可設定值。 |
傳回
類型 | Description |
---|---|
浮點數,指出重試要求之前要等候多久,或 [無] 表示不應該執行重試。 |
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
參數
名稱 | Description |
---|---|
settings
必要
|
|
request
必要
|
|
response
|
預設值: None
|
error
|
預設值: None
|
傳回
類型 | Description |
---|---|
重試嘗試是否耗盡。 |
send
send(request)
參數
名稱 | Description |
---|---|
request
必要
|
|
sleep
sleep(settings, transport)
參數
名稱 | Description |
---|---|
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