Meu aplicativo recebe uma mensagem de erro semelhante ao “controle de utilização: A taxa excedeu o código de status: 400,".
Breve descrição
As chamadas de API do Console de Gerenciamento da AWS, da AWS Command Line Interface (AWS CLI) e dos aplicativos contribuem para um limite máximo de taxa para sua conta da AWS.
**Observação:**Você não pode aumentar os limites da taxa de serviço da AWS.
Resolução
Para evitar erros de controle de utilização, siga estas práticas recomendadas:
- Implemente o recuo exponencial no código do seu aplicativo. O recuo exponencial permite esperas mais longas sempre que uma chamada de API para a AWS é limitada. Dependendo do aplicativo, o número máximo de atrasos e o número máximo de tentativas podem variar.
Observação: Cada SDK da AWS implementa lógica de repetição automática e algoritmos de recuo exponencial.
- Alguns aplicativos podem implementar o armazenamento em cache para reduzir a taxa de chamadas de API. Por exemplo, suponha que seu aplicativo chame a chamada de API AssumeRole para um fluxo de trabalho entre contas. Isso significa que as credenciais temporárias que você recebeu podem ser armazenadas e reutilizadas para várias chamadas entre contas. Além disso, você não precisa fazer uma nova chamada AssumeRole para cada chamada de API entre contas feita.
- Se seu aplicativo chamar AssumeRole e armazenar em cache as credenciais, verifique a duração máxima da sessão das credenciais temporárias da função. Ao prolongar a duração das credenciais temporárias, você não precisa chamar AssumeRole com tanta frequência.
- Distribua suas chamadas de API por um longo período de tempo em vez de chamar as APIs de uma só vez. Por exemplo, aplicativos que têm um trabalho diário chamando SimulatePrincipalPolicy ou GenerateServiceLastAccessedDetails para auditar permissões para usuários e funções do AWS Identity and Access Management (IAM). Em vez de executar as chamadas de API ao mesmo tempo, você pode escaloná-las.
- Para aplicativos que alteram dinamicamente as permissões da política do IAM usando chamadas de API como CreatePolicyVersion, considere outro método. Por exemplo, você pode usar políticas de sessão durante a adoção de perfil do IAM.
- Para erros de controle de utilização do AWS Security Token Service (AWS STS), use os endpoints regionais do AWS STS em vez de enviar todas as chamadas do AWS STS para o endpoint global. Cada endpoint tem um controle de utilização de aceleração separado. Os endpoints regionais do AWS STS podem oferecer aos aplicativos um tempo de resposta mais rápido nas chamadas de API do AWS STS.
- Como as contas da AWS têm limites de controle de utilização separados, considere distribuir as workloads de trabalho em várias contas usando AWS Organizations. A criação de novas contas da AWS não tem custo adicional e as organizações oferecem faturamento consolidado. As políticas de controle de serviços (SCPs) permitem que você controle o máximo de permissões de usuários e funções do IAM em uma conta da AWS. Para obter mais informações, consulte Gerenciar contas por meio do AWS Organizations e Como faço para começar a usar o AWS Organizations?
Informações relacionadas
Como crio uma tabela do Amazon Athena de forma automática para pesquisar logs do AWS CloudTrail?
Como posso descobrir qual chamada de API está causando o erro “Taxa excedida”?