| Exemple de rapport simplifié de test de charge applicatif |
|
Contexte du test de chargeUn client nous soumet une problématique concernant la future augmentation en nombre d'utilisateurs de son site internet.Afin de valider la tenue de charge pour un certain nombre d'utilisateurs, nous allons effectuer un test de montée en charge afin de vérifier que le serveur peut accepter une telle demande en fournissant des temps de reponses convenables aux requêtes web des visiteurs, et mesurer les réserves systèmes dont dispose le serveur à ce moment là. Enfin conseiller le client vers d'éventuelles optimisations et modifications de l'architecture materielle ou logicielles à envisager afin de pouvoir soutenir une charge supplémentaire. Les étapes de préparation et premières constatationsNous avons effectué, comme prévu, un pré-test de charge afin de valider les configurations et notre script de test. L'objectif était d'avoir une idée précise de la réaction de l'application afin de mieux calibrer notre test réel final. Le pré-test a consisté à connecter progressivement de 0 à 40 utilisateurs simultanées en 60 minutes. Puis, nous avons lancé le test de charge le vendredi de 2H à 7H30 du matin ou l'on est monté de 0 à 180 utilisateurs simultanées. Les scénarios des tests de chargesTemps de pause définis :
Le client veut pouvoir avoir une idee precise du temps de reponse des elements externe d'un fournisseur de webservices. Test du vendredi à 2H00
Déroulement du test : Début à 2H00
Observations et Analyses pour le test de charge du Vendredi
ObjectifLe choix de faire un test de charge sur une durée de 5H et de monter jusqu'à 180 utilisateurs avait pour objectif de faire tourner le serveur le maximum possible, mais en dessous du point de «bascule » provoquant l'emballement des services. Ce qui nous permet de récolter un ensemble de graphe pour voir les éventuelles fuites de mémoire/cpu/load et/ou limites des configurations systèmes. La très forte charge sera abordée dans le test suivant.
Trafic absorbé lors du test de charge et Pics:35 Mbs atteint avec 180 utilisateurs simultanés
Remarque : quand on dit qu'on a 180 utilisateurs participant au test de charge, cela ne veut pas dire qu'ils sont en train de « cliquer » en même temps en direction de l'application, car un utilisateur : lance des requêtes, attend la réponse, lit les pages affichées, regarde les images etc ... ; toutes ces actions passives ne sollicitent pas à chaque seconde le serveur.
Constatations graphiques : Page d'accueil
Le graphe ci dessus, représente le temps d'affichage de la page d'accueil durant le test de charge, à partir d'un serveur se situant dans le même datacenter, c'est à dire avec des temps de reponse ne reflétant pas la réalité de l'internet, les serveurs etant sur les mêmes switchs gigabit. Le plus important est de voir la progression des temps de réponse durant le test. Au début, on se situe dans une moyenne autour de 1,4 secondes, qui va presque doubler à la fin , autour de 2,6 secondes.
Ci dessous un graphe représentant les temps d'affichage de la page d'accueil durant le test de charge, à partir d'un serveur se situant derrière une connexion ADSL:
On commence avec des valeurs autour de 3,2 secondes et on arrive à des valeurs autour de 4 secondes. Pour comparer avec un navigateur internet, sans aucune charge, la page d'accueil s'affiche en 5,6 secondes, au début du test, alors que avec 180 utilisateurs actifs en cours d'exécution, on peut atteindre 12 secondes.
L'analyse des graphesMontée de 0 à 60 utilisateurs :Le temps de chargement des pages html est legèrement décroissant. On remarque une stabilisation à 60 utilisateurs ainsi qu'un début de croissance. Les images, css, js et autres fichiers statiques ont quand à elles un temps de chargement constant. Montée de 60 à 120 utilisateurs :Le temps de chargement des pages html poursuit sa croissance jusqu'à être remonté aux environs des temps initiaux, puis continue une légère croissants. Les images, css, js et autres fichiers statiques restent constant. Montée de 120 à 180 utilisateurs :Le temps de chargement des pages html continu une legère augementation non proportionnelle à l'augementation des utilisateurs. Comme depuis le debut, les images, css, js et autres fichiers statiques restent constant.
Graphes de monitoring des servicesLors du test de charge, nous avons installé des capteurs sur les différentes applications systèmes afin de remonter un maximum d'information quand à leur réaction face à la charge. Ci joint quelques graphes: Processeur:
Mémoire
Application, SQL et Serveur HTTP:
Les graphes ci dessus montrent, que pendant le test, le serveur disposait toujours de ressources en CPU et en mémoire vive pour répondre aux requêtes. Vers la fin du test, la mémoire disponible était assez basse. Tous les services au niveau du serveur ont une allure correspondant à la montée en charge. Les valeurs croissent de façon linéaire.
Corrélation entre tous les graphesLa décroissance du temps de chargement des pages html est due à la mise en cache au niveau php et mysql. Cela est du au fait que les scénarios ne sont pas totalement aléatoire (recherches préprogrammées).
|
Dernières Nouvelles
Sur Internet
Recherche
Spam
Idée de l'efficacité de nos antispams libres :
7 derniers jours :
| Spam | Virus | Mails traités | |
|---|---|---|---|
| Sam | 64% | 678 | 141 852 |
| Ven | 50% | 246 | 184 026 |
| Jeu | 49% | 357 | 204 430 |
| Mer | 50% | 850 | 208 779 |
| Mar | 45% | 320 | 252 778 |
| Lun | 27% | 961 | 246 321 |
| Dim | 49% | 542 | 195 731 |
4 semaines précédentes :
| N° Sem. | Spam | Virus | Mails traités |
|---|---|---|---|
| 04 | 50% | 3,450 | 1 533 459 |
| 03 | 54% | 1,220 | 1 395 119 |
| 02 | 33% | 1,023 | 2 004 651 |
| 01 | 34% | 1,134 | 1 673 167 |











