Код: Выделить всё
services.AddHttpClient(HttpClientProvider.WebAPI,
client => client.BaseAddress = new Uri(baseAddress))
.AddHttpMessageHandler()
.AddStandardResilienceHandler(o => {
o.AttemptTimeout.Timeout = TimeSpan.FromSeconds(30);
o.CircuitBreaker.SamplingDuration = TimeSpan.FromSeconds(100);
})
;
Warn: Polly [3]
Попытка выполнения. Источник: '-standard // Standard-Retry', операционная ключ: '', результат: «Операция не завершена в пределах допустимого тайм-аута
’00: 00: 10». ', Попытка:' 2 ',
Время выполнения: 10069,4 мс Polly.timeout.timeoutrejectedException: операция
не завершена в допустимое время ожидания '00: 00: 10'. < /P>
< /blockquote>
между ними, есть экземпляр Yarp, но у этого есть более высокие тайм -ауты. Предупреждения/ошибки от клиента.
[update]
Я изменил код на основе предложений, без изменений в результате.
services.AddHttpClient(HttpClientProvider.WebAPI,
client => {
client.BaseAddress = new Uri(baseAddress);
client.Timeout = TimeSpan.FromSeconds(30);
})
.AddHttpMessageHandler()
.AddStandardResilienceHandler(o => {
o.AttemptTimeout.Timeout = TimeSpan.FromSeconds(30);
o.CircuitBreaker.SamplingDuration = TimeSpan.FromSeconds(100);
})
;
< /code>
[update2] < /p>
Это странно: после получения параметров с помощью: < /p>
var serviceProvider = services.BuildServiceProvider();
var monitor = serviceProvider.GetRequiredService();
var options = monitor.Get($"{HttpClientProvider.WebAPI}-standard");
< /code>
Я получаю 30 секунд. Тем не менее, сообщение, которое я получаю, начинается с «-стандарта», которое при получении имеет 10 с. >
, который не должен возвращать последнее, а первое. Чего мне не хватает?
Подробнее здесь: https://stackoverflow.com/questions/794 ... ce-handler