Il existe plusieurs raisons pour lesquelles les résultats de votre test de charge indiquent que le nombre de transactions par minute réalisées pendant la série de tests n’a pas correspondu à l’objectif de transaction défini :

  • Atteindre la limite maximale d’utilisateurs virtuels simultanés

Lorsque la charge utilisateur ne peut pas être augmentée aux niveaux nécessaires en raison des facteurs mentionnés ci-dessus, le système peut atteindre sa limite prédéfinie pour le Nombre maximum d’utilisateurs simultanés. Lorsque la limite est atteinte, il ne peut pas simuler de charge supplémentaire, ce qui empêche d’atteindre le nombre souhaité de transactions par minute.

  • Fin prématurée du test

Le test de charge peut se terminer en fonction de la durée du test de charge spécifiée avant de collecter le nombre nécessaire de réponses requises pour le recalcul dynamique de l’objectif de transaction par minute. Cet arrêt prématuré peut entraîner des résultats de test inexacts ou incomplets.

  • Augmentation proportionnelle du temps de réponse avec la charge de l’utilisateur

Si la durée moyenne de réponse augmente proportionnellement à la charge de l’utilisateur, il devient difficile d’atteindre l’objectif de transaction souhaité par minute, indépendamment de l’augmentation du nombre d’injecteurs de charge ou de la limite maximale d’utilisateurs simultanés. Dans de tels scénarios, le simple fait d’ajouter d’autres utilisateurs n’entraîne pas un nombre plus élevé de transactions.

Par exemple :

Dans les deux cas ci-dessous, malgré l’augmentation du nombre d’utilisateurs, les transactions par minute restent les mêmes en raison de l’augmentation proportionnelle du temps de réponse.

Transactions par minute = 10 utilisateurs / 5 secondes = 2
Transactions par minute = 20 utilisateurs / 10 secondes = 2

Recommandations

Deux facteurs principaux peuvent être à l’origine des problèmes décrits ci-dessus et contribuer à l’insuffisance du nombre de transactions par minute :

Pas d’étalonnage entraînant une surcharge de l’injecteur de charge

Si l’étalonnage n’a pas été effectué avant le test, les injecteurs de charge (les serveurs simulant la charge de l’utilisateur) peuvent atteindre 100 % d’utilisation du processeur. Cette surcharge peut empêcher les injecteurs de générer la charge utilisateur requise. Assurez-vous de toujours calibrer la charge utile de l’injecteur de charge avant d’exécuter un test de charge.

Augmentation de la durée moyenne de réponse

L’une des raisons courantes pour lesquelles l’objectif de transaction n’est pas atteint est l’augmentation du temps de réponse moyen (durée moyenne de réponse) de votre serveur sous charge. À mesure que la charge de l’utilisateur augmente, le serveur peut prendre plus de temps pour traiter chaque demande, ce qui entraîne des temps de réponse plus longs et un nombre réduit de transactions par minute.

Si vous n’êtes pas sûr de l’évolution des performances de votre serveur en cas de charge, nous vous recommandons d’exécuter un court test de charge avec la courbe de charge ajustable dynamique. L’augmentation manuelle de la charge utilisateur aux valeurs souhaitées vous aidera à prévoir les fluctuations du temps de réponse de votre serveur et à configurer correctement les paramètres de la courbe basée sur les objectifs.