Долгое выполнение запросов HttpClient
Если посылать запросы через HttpClient c интервалом примерно 2.5 минут и более, они выполняются гораздо медленнее. Покажу на примере
static HttpClient client = new HttpClient();
static void Main(string[] args)
{
Timer timer = new Timer(async (e) => {
Stopwatch sw = new Stopwatch();
sw.Start();
await client.GetAsync("https://google.com");
sw.Stop();
Console.WriteLine(sw.Elapsed.Milliseconds);
}, null, 0, 20000); //интервал менее 2.5 минут
Console.ReadKey();
}
Я получаю 924 259 270 258 и так далее, время выполнения в районе 200-300 мс
static HttpClient client = new HttpClient();
static void Main(string[] args)
{
Timer timer = new Timer(async (e) => {
Stopwatch sw = new Stopwatch();
sw.Start();
await client.GetAsync("https://google.com");
sw.Stop();
Console.WriteLine(sw.Elapsed.Milliseconds);
}, null, 0, 150000); //интервал 2.5 минут и более
Console.ReadKey();
}
Получаю 935 549 478 551, то есть, можно сказать, в два раза дольше.
С чем это связано и как можно исправить?