Executando verificação de segurança...
1

[C# .NET 6] Como controlar as requisições ao consumir uma API?

Cenário:

Estou desenvolvendo um console aplication. que vai ter em média 2000 requisições para fazer a uma API que possui um controle de entrada q permite 10 tps para a minha aplicação.

Paralelizei as 2000 requisições, para poder otimizar a performance, porém o servidor passa a recusar chamadas pois passa do tps permitido... 😞

Alguém conhece alguma forma de controlar as requisições para que elas não passem do tps permitido?

2
1

Valeu pelo artigo... mas o q estou precisando é o oposto...

O artigo explica como fazer a restrição, em Python, no servidor...

O que preciso é o cliente não sobrecarregar o servidor...

1

Você faz o rate limiting na chamada, no seu JOB.

Pode-se ler aqui como fazer com Laravel. Você terá que adaptar para a sua tecnologia

Rate Limiting não necessáriamente precisa acontecer no lado do servidor, pode acontecer no cliente também

1

uma estrategia que pode utilizar, é separar as requisoes de 10 em 10, e quando tiver um retorno de status code 429 (too many request) voce coloca um delay de um segundo e manda repetir apartir da requisicao que recebeu o retorno.Para uma performace melhor, seria voce controlar o tempo, monitorando o tempo das ultimas 10 requisicoes e aplicar um algoritimo para ir "liberando a permissao" para fazer uma proxima requisicao a api