429 número excessivo de solicitações

Você está lendo a documentação do Apigee Edge.
Acesse a documentação da Apigee X.
info

Sintoma

Você pode receber esse erro do roteador e não ver o 429 de um rastreamento, porque as solicitações não chegam aos processadores de mensagens. As chamadas diretamente para os roteadores também retornam 429.

Mensagens de erro

<html>
  <head> <title>429 Too Many Requests</title> </head>
  <body> <center> <h1>429 Too Many Requests</h1> </center> <hr> <center>server</center> </body>
</html>
    

Causas possíveis

Normalmente, o arquivo de configuração do nginx tem uma configuração de conf_load_balancing_load.balancing.driver.nginx.limit_conn=5000 que pode ser muito baixa para conexões recebidas.

Diagnóstico

  1. Verifique o limite padrão no roteador nginx com o seguinte comando:
    /opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_load_balancing_load.balancing.driver.nginx.limit_conn
            
  2. Verifique as entradas access_log do host virtual para 429 erros e confira se elas não estão vindo dos processadores de mensagens upstream e estão vindo diretamente do roteador:
    cd /opt/apigee/var/log/edge-router/nginx/ grep "429 " org~env-port_access_log
            

Resolução

  1. Usando o comando ssh, conecte-se aos nós do roteador, um por um.
  2. Abra o arquivo a seguir (crie-o se ele não existir):
    /opt/apigee/customer/application/router.properties
            
  3. Adicione a linha abaixo:
    conf_load_balancing_load.balancing.driver.nginx.limit_conn=25000
            
  4. Salve o arquivo.
  5. Verifique se o arquivo tem a propriedade de apigee:apigee:
    sudo chown apigee:apigee router.properties
            
  6. Reinicie o roteador:
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart
            
  7. Valide com o comando a seguir para verificar se a propriedade está definida:
    /opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_load_balancing_load.balancing.driver.nginx.limit_conn
            
  8. Repita em cada roteador.