你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
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)
参数
名称 | 说明 |
---|---|
initial_backoff
|
首次重试的初始退避间隔(以秒为单位)。 默认值: 15
|
increment_base
|
第一次重试后递增initial_backoff的基数(以秒为单位)。 默认值: 3
|
retry_total
|
最大重试尝试次数。 默认值: 3
|
retry_to_secondary
|
是否应将请求重试到辅助数据库(如果可以)。 这只应启用 RA-GRS 帐户,并且可以处理可能过时的数据。 默认值: False
|
random_jitter_range
|
一个以秒为单位的数字,指示回退间隔的抖动/随机化范围。 例如,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错误:请求期间遇到错误,或 如果成功收到响应,则为 None。 |
send | |
sleep |
configure_retries
configure_retries(request: PipelineRequest) -> Dict[str, Any]
参数
名称 | 说明 |
---|---|
request
必需
|
|
get_backoff_time
计算重试前的睡眠时间。
get_backoff_time(settings: Dict[str, Any]) -> float
参数
名称 | 说明 |
---|---|
settings
必需
|
与获取回退时间相关的可配置值。 |
返回
类型 | 说明 |
---|---|
指示重试请求前等待的时间的浮点数,或“无”指示不应执行重试。 |
increment
递增重试计数器。
Dict[str, Any]] 设置:与递增操作相关的可配置值。 :p aram PipelineRequest 请求:管道请求对象。 :p aram Optional[PipelineResponse] 响应:管道响应对象。 :p错误:请求期间遇到错误,或
如果成功收到响应,则为 None。
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