你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

ExponentialRetry 类

指数重试。

构造指数重试对象。 initial_backoff用于第一次重试。 后续重试在 initial_backoff + increment_power^retry_count 秒后重试。

继承
azure.storage.blob._shared.policies.StorageRetryPolicy
ExponentialRetry

构造函数

ExponentialRetry(initial_backoff=15, increment_base=3, retry_total=3, retry_to_secondary=False, random_jitter_range=3, **kwargs)

参数

名称 说明
initial_backoff
int

首次重试的初始退避间隔(以秒为单位)。

默认值: 15
increment_base
int

在第一次重试后递增initial_backoff的基数(以秒为单位)。

默认值: 3
max_attempts
必需
int

最大重试尝试次数。

retry_to_secondary

是否应将请求重试到辅助数据库(如果可以)。 应仅启用 RA-GRS 帐户,并可以处理可能过时的数据。

默认值: False
random_jitter_range
int

一个以秒为单位的数字,指示回退间隔的抖动/随机化范围。 例如,random_jitter_range为 3 会导致退让间隔 x 在 x+3 和 x-3 之间变化。

默认值: 3
retry_total
默认值: 3

方法

configure_retries
get_backoff_time

计算重试前的睡眠时间。

increment

递增重试计数器。

send
sleep

configure_retries

configure_retries(request)

参数

名称 说明
request
必需

get_backoff_time

计算重试前的睡眠时间。

get_backoff_time(settings)

参数

名称 说明
settings
必需

与获取回退时间相关的可配置值。

返回

类型 说明
int,

一个整数,指示在重试请求之前需要等待的时间,或“无”表示不应执行重试。

increment

递增重试计数器。

increment(settings, request, response=None, error=None)

参数

名称 说明
settings
必需

与递增操作相关的可配置值。

request
必需
<xref:<xref:"PipelineRequest">>

管道请求对象。

"PipelineResponse"
必需

管道响应对象。

error

请求期间遇到错误;如果成功收到响应,则为“无”。

默认值: None
response
默认值: None

返回

类型 说明

重试尝试是否已用尽。

send

send(request)

参数

名称 说明
request
必需

sleep

sleep(settings, transport)

参数

名称 说明
settings
必需
transport
必需

属性

next

指向下一个策略或传输 (包装为策略) 的指针。 将在创建管道时设置。

next: HTTPPolicy[HTTPRequestType, HTTPResponseType]