Vous consultez la documentation d'Apigee Edge.
Accédez à la documentation sur Apigee X. info
Problème constaté
Cette erreur peut provenir du routeur et ne pas afficher 429
à partir d'une trace, car les requêtes n'atteignent pas les processeurs de messages. Les appels directs aux routeurs eux-mêmes renvoient également 429
.
Messages d'erreur
<html> <head> <title>429 Too Many Requests</title> </head> <body> <center> <h1>429 Too Many Requests</h1> </center> <hr> <center>server</center> </body> </html>
Causes possibles :
En règle générale, le fichier de configuration nginx est défini sur conf_load_balancing_load.balancing.driver.nginx.limit_conn=5000
, ce qui peut être trop faible pour les connexions entrantes.
Diagnostic
-
Vérifiez la limite par défaut sur le routeur nginx à l'aide de la commande suivante:
/opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_load_balancing_load.balancing.driver.nginx.limit_conn
-
Vérifiez les entrées
access_log
de l'hôte virtuel pour détecter les erreurs429
et vérifiez qu'elles ne proviennent pas des processeurs de messages en amont et qu'elles proviennent directement du routeur:cd /opt/apigee/var/log/edge-router/nginx/ grep "429 " org~env-port_access_log
Solution
- À l'aide de la commande
ssh
, connectez-vous aux nœuds de votre routeur, un par un. -
Ouvrez le fichier suivant (créez-le s'il n'existe pas):
/opt/apigee/customer/application/router.properties
-
Ajoutez la ligne suivante :
conf_load_balancing_load.balancing.driver.nginx.limit_conn=25000
- Enregistrez le fichier.
-
Assurez-vous que le fichier appartient à
apigee:apigee:
.sudo chown apigee:apigee router.properties
-
Redémarrez le routeur:
/opt/apigee/apigee-service/bin/apigee-service edge-router restart
-
Validez avec la commande suivante pour vérifier que la propriété est définie:
/opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_load_balancing_load.balancing.driver.nginx.limit_conn
- Répétez l'opération sur chaque routeur.