Description du problème
Lors des tests de charge avec Performance Testing Service (PTS), vous pouvez constater des erreurs ou des délais d'expiration, même si l'utilisation du processeur, de la mémoire et des entrées/sorties de vos serveurs backend reste faible. Cela indique généralement que le goulot d'étranglement se situe au niveau de la couche d'accès réseau entre PTS et votre backend, et non sur vos serveurs d'applications.
Cause
Les requêtes envoyées par PTS transitent par un ou plusieurs services intermédiaires avant d'atteindre le backend. Ces services incluent les équilibreurs de charge, les pare-feu, les protections anti-DDoS et les nœuds CDN. Chaque service possède ses propres limites de capacité et ses politiques de sécurité. Lorsqu'une limite est atteinte, les requêtes sont abandonnées ou rejetées avant d'arriver à votre backend. Par conséquent, les métriques du backend restent faibles tandis que le nombre d'erreurs augmente fortement.
Diagnostic rapide
Utilisez le tableau suivant pour identifier quelle couche d'accès réseau provoque les erreurs :
| Symptôme | Cause probable | Section |
|---|---|---|
| Erreurs HTTP 503 ; le backend ne reçoit aucun trafic ni journal | Limitation du débit SLB | Limitation du débit SLB |
| Pic soudain d'erreurs en cours de test ; les journaux de sécurité indiquent des requêtes bloquées | Blocage par Anti-DDoS ou WAF | Blocage par Anti-DDoS ou WAF |
| Erreurs lorsque le trafic approche ou dépasse le pic historique | Limites de capacité CDN ou ESA | Capacité CDN ou ESA |
Solution
Identifiez le produit de la couche d'accès réseau situé devant votre backend, puis suivez la section correspondante.
Limitation du débit Server Load Balancer (SLB)
Symptômes
Erreurs HTTP 503 pendant les tests de charge
Les serveurs backend n'affichent aucun trafic ni entrée de journal correspondant
Les erreurs apparaissent sous des charges de travail HTTPS ou lorsque la persistance de session de couche 7 est activée
Cause
Les instances SLB appliquent des limites de limitation du débit par IP. Lorsque SLB constitue la couche de service la plus externe et que l'API utilise HTTPS ou la persistance de session de couche 7, la surcharge de traitement de SLB augmente. L'adresse IP unique de l'instance SLB peut atteindre son seuil de limitation, provoquant des erreurs 503 au lieu de transférer les requêtes vers le backend.
Résolution
-
Vérifiez les limites de spécification de votre instance SLB :
Métrique Description Nombre maximal de connexions Nombre total de connexions simultanées prises en charge par l'instance Connexions par seconde (CPS) Nouvelles connexions établies par seconde Requêtes par seconde (QPS) Requêtes HTTP/HTTPS traitées par seconde Assurez-vous que l'allocation de la bande passante correspond à votre volume de test de charge en fonction du type de facturation acheté.
Si la spécification SLB constitue le goulot d'étranglement, migrez vers une instance aux spécifications supérieures avant de relancer le test.
Pour plus d'informations sur les erreurs 503 provenant de SLB, consultez la rubrique 503 (Service Unavailable).
Blocage du trafic de test par Anti-DDoS ou WAF
Symptômes
Pic soudain d'erreurs en cours de test de charge
Les journaux Anti-DDoS ou Web Application Firewall (WAF) indiquent des requêtes bloquées
Les résultats des tests de charge sont incohérents ou le test échoue complètement
Cause
Les schémas de trafic des tests de charge — taux de requêtes élevés provenant d'un ensemble limité d'adresses IP — ressemblent fortement aux attaques Challenge Collapsar (CC) et DDoS. Les politiques de protection Anti-DDoS et WAF détectent ces schémas et bloquent le trafic.
Résolution
Consultez les journaux Anti-DDoS ou WAF pour confirmer que le trafic bloqué correspond bien à du trafic légitime de test de charge PTS.
Évaluez l'impact sur votre environnement de production.
Désactivez temporairement les politiques de protection concernées, ou ajoutez le trafic de test de charge PTS à la liste d'autorisation.
Réactivez les politiques de protection une fois le test de charge terminé.
Pour plus d'informations, consultez :
Limites de capacité CDN ou ESA
Symptômes
Erreurs ou dégradation des performances lorsque le trafic du test de charge approche ou dépasse votre pic historique
Les points de présence (POP) Content Delivery Network (CDN) ou Edge Security Acceleration (ESA) renvoient des erreurs
Cause
Les POP CDN et ESA allouent la capacité en fonction de vos schémas de trafic historiques. Un test de charge qui dépasse votre pic existant peut excéder la capacité allouée au niveau de certains POP spécifiques.
Résolution
Si votre test de charge doit approcher ou dépasser votre niveau actuel de trafic de pointe, soumettez un ticket avant d'exécuter le test afin de signaler les POP CDN et ESA cibles.