Ajuste no RateLimiter e controle de taxa mais granular
Alterada a inicialização da variável `_windowStart` no arquivo RateLimiter.cs para simplificar o cálculo do início da janela de tempo, removendo o arredondamento baseado no intervalo. No arquivo Program.cs, o limite de requisições do RateLimiter foi reduzido de 400/minuto para 12/segundo, permitindo um controle de taxa mais preciso e restritivo.
This commit is contained in:
parent
c98aec2c24
commit
0db548b273
@ -13,7 +13,7 @@
|
||||
_maxRequests = maxRequests;
|
||||
_interval = interval;
|
||||
var now = DateTime.Now;
|
||||
_windowStart = new DateTime(now.Year, now.Month, now.Day, now.Hour, now.Minute - (now.Minute % interval.Minutes), 0);
|
||||
_windowStart = new DateTime(now.Year, now.Month, now.Day, now.Hour, now.Minute, 0);
|
||||
_requestCount = 0;
|
||||
}
|
||||
|
||||
|
||||
@ -29,7 +29,7 @@ class Program
|
||||
ServerCertificateCustomValidationCallback = (HttpRequestMessage req, X509Certificate2? cert, X509Chain? chain, SslPolicyErrors errors) => true
|
||||
});
|
||||
|
||||
var rateLimiter = new RateLimiter(400, TimeSpan.FromMinutes(1));
|
||||
var rateLimiter = new RateLimiter(12, TimeSpan.FromSeconds(1));
|
||||
var useCase = new ProcessarMedicoesUseCase(postgresRepo, accessRepo, httpClient, rateLimiter);
|
||||
|
||||
await useCase.ExecuteAsync(dataIni, dataFim, caminhoLog, CancellationToken.None);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user