Como evito os erros de ThrottlingException “taxa excedida” quando executo scripts de monitoramento no Amazon EMR?

2 minuto de leitura
0

Para monitorar meus clusters do Amazon EMR, executo scripts que fazem chamadas de API. Os scripts retornam erros semelhantes aos seguintes: “Taxa excedida (Serviço: Amazon ElasticMapReduce; Código de status: 400; Código do erro: ThrottlingException; ID da solicitação: e2b6191c-gkl5-269r-u735-cryyz251a837)" Como evito os erros de “taxa excedida"?

Descrição breve

O Amazon EMR limita as chamadas de API para manter a estabilidade do sistema. As exceções de limitação geralmente ocorrem quando você executa scripts de monitoramento em intervalos regulares para verificar se há um parâmetro nos clusters. Aqui está um exemplo: chamar DescribeCluster a cada 60 segundos para verificar se o cluster atingiu o estado WAITING. Quanto mais clusters você tiver e quanto mais scripts de monitoramento forem executados, maior será a probabilidade de você obter erros de limitação.

Resolução

Para evitar erros de controle de utilização:

  • Reduza a frequência das chamadas de API.
  • Escalone os intervalos das chamadas de API para que elas não sejam executadas todas ao mesmo tempo.
  • Implemente o recuo exponencial ao fazer chamadas de API.
  • Considere migrar para uma arquitetura baseada em eventos.

Para entender a origem dos erros de controle de utilização, use o AWS CloudTrail para rastrear o histórico de eventos. O CloudTrail pode ajudar a identificar detalhes do evento, como os seguintes:

  • Chamadas de API frequentes
  • Avalie os erros excedidos e suas chamadas de API relacionadas
  • Se as chamadas de API forem acionadas por usuários ou pela automação

Informações relacionadas

Erros comuns

Gerenciar e monitorar a limitação de API em suas workloads

Como o CloudTrail funciona

AWS OFICIAL
AWS OFICIALAtualizada há um ano