fix(http): set CircuitBreaker.SamplingDuration to 60s
Polly StandardResilienceHandler validates SamplingDuration >= 2 * AttemptTimeout at startup. Default SamplingDuration is 30s and our AttemptTimeout is 30s, so the container failed to boot with OptionsValidationException. Set SamplingDuration explicitly to 60s while keeping AttemptTimeout at 30s.
This commit is contained in:
@@ -54,6 +54,8 @@ builder.Services.AddHttpClient("gitea", client =>
|
||||
// 仅对 5xx / 429 / 网络错误重试;4xx 由 ShouldHandle 默认配置自动跳过
|
||||
options.TotalRequestTimeout.Timeout = TimeSpan.FromSeconds(90);
|
||||
options.AttemptTimeout.Timeout = TimeSpan.FromSeconds(30);
|
||||
// Polly 校验:SamplingDuration ≥ 2× AttemptTimeout,默认 30s 不达标
|
||||
options.CircuitBreaker.SamplingDuration = TimeSpan.FromSeconds(60);
|
||||
});
|
||||
|
||||
// ─── 业务服务 ──────────────────────────────────────────────
|
||||
|
||||
Reference in New Issue
Block a user