7 outils pour tester la résistance de votre site Web au trafic intense

Article écrit par:
  • Outils Web
  • Mise à jour: juin 24, 2020

Même le plus novice des propriétaires de sites Web a à un moment ou à un autre testé les performances de leur site Web. Cependant, la plupart de ces tests se concentrent normalement sur vitesse de chargement or indices d'expérience utilisateur.

Mais qu'en est-il des tests de charge?

Bien que la plupart des sites Web soient sujets à des niveaux de trafic qui sont généralement assez réguliers, il peut arriver que certains sites soient confrontés à de lourdes charges. Les magasins en ligne ou même certains sites Web gouvernementaux en sont des exemples.

Si votre site Web connaît une augmentation inattendue du nombre de visiteurs sur une courte période, comment êtes-vous bien équipé pour le gérer?

Comprendre les tests de charge

Qu'est-ce que le test de charge?

Les tests de charge comparent un site Web pour voir comment il fonctionne sous diverses charges.

Par exemple, un test peut simuler un nombre croissant de visiteurs simultanés atterrissant sur votre site. Il enregistrera également la façon dont votre site les traite et les enregistre pour référence.

Exemple de tests de charge
Exemple - tests de charge à LoadStorm: les mesures mesurées incluent le temps de réponse moyen, le temps de réponse de pointe et le taux d'erreur (source d'image).

Quels types de «charge» sont testés?

Selon l'outil avec lequel vous choisissez de charger le test de votre site, chacun peut avoir des fonctionnalités différentes. Le plus simple consistera simplement à simuler une charge toujours croissante et à s'arrêter lorsque votre site plante.

D'autres outils peuvent être capables de générer une charge simulée qui imite un comportement différent de l'utilisateur, comme effectuer des requêtes, changer de page ou charger d'autres fonctions. Certains peuvent même être en mesure de cartographier les flux logiques pour chaque scénario individuel.

Outils de test de charge à considérer

Selon leur complexité, certains outils de test de charge peuvent être assez chers. Cependant, il existe des options moins chères sur le marché et certaines sont même gratuites. J'ai inclus un mélange de ceux-ci ci-dessous pour votre référence, y compris quelques options open source.

1. Loadview par Dotcom Monitor

Site Web : https://www.loadview-testing.com/

Prix: à partir de 199 $ / mois, essai gratuit disponible

Loadview est l'une des solutions les plus complètes disponibles sur le marché et repose aujourd'hui sur un modèle de service cloud. Cela signifie que quel que soit le type de simulation dont vous avez besoin, vous ne payez que pour le service - il n'y a aucun investissement en matériel ou autre.

En ce qui concerne les fonctionnalités, Loadview offre une solution très complexe qui peut inclure n'importe quoi, directement Tests de charge HTTP à un mélange sophistiqué de votre choix. Il est capable de simuler des variables dynamiques et même une diversité de géolocalisation dans ses tests.

Fonctionnalités

  • Tests post-pare-feu
  • Gère les variables dynamiques
  • Graphiques détaillés des cascades
  • Courbes d'essai de charge

2. K6 Cloud (anciennement Load Impact)

Site Web : https://k6.io/

Prix: à partir de 49 $ / mois

K6 est un outil de test de charge open source basé sur le cloud qui est fourni en tant que service. L'une des choses qui rend cet outil intéressant est qu'il est tarifé sur un modèle d'utilisation variable, ce qui signifie que le coût d'entrée peut être relativement faible en fonction de vos besoins. Il est cependant principalement axé sur les développeurs.

Outre les tests de charge, K6 propose également une surveillance des performances. Son côté test de charge est axé sur les charges élevées et peut gérer différents modes tels que les pointes, les tests de résistance et les courses d'endurance.

* K6 ne fonctionne pas dans les navigateurs ni dans NodeJS

Fonctionnalités

  • API conviviales pour les développeurs.
  • Script en JavaScript
  • Suivi des performances

3. Charger Ninja

Site Web : https://loadninja.com/

Prix: à partir de 270.73 $ / mois

Load Ninja vous permet de tester la charge avec de vrais navigateurs basés sur des scripts enregistrés, puis aide à analyser les résultats de performance. Son utilisation de vrais navigateurs à grande échelle signifie que cet outil permet de recréer un environnement plus réaliste et un résultat final pour les tests.

Les résultats peuvent être analysés en temps réel et grâce aux outils pratiques fournis par le système, votre temps de script peut être réduit jusqu'à 60%. Les applications internes peuvent également être testées, à la fois avec des adresses IP fixes basées sur un proxy ou votre propre plage d'adresses IP dynamiques (en utilisant une liste blanche).

Fonctionnalités

  • Testez avec des milliers de navigateurs réels
  • Diagnostiquer les tests en temps réel
  • Aperçu des performances des applications internes

4. LoadRunner par Micro Focus

Site Web : https://www.microfocus.com/

Prix: à partir de 0 $

Avec un compte communautaire gratuit d'entrée de gamme qui prend en charge les tests de 50 utilisateurs virtuels, LoadRunner est disponible même pour les nouveaux propriétaires de sites Web. Cependant, si vous le faites passer à des niveaux élevés, le coût augmente de façon exponentielle.

Ce service basé sur le cloud propose également l'utilisation d'un environnement de développement intégré pour les tests unitaires. Il prend en charge un large éventail d'environnements d'application, notamment Web, Mobile, WebSockets, Citrix, Java, .NET et bien plus encore. Soyez conscient que LoadRUnner peut être assez complexe et a une courbe d'apprentissage abrupte.

Fonctionnalités

  • Moteur d'auto-corrélation breveté
  • Prend en charge plus de 50 technologies et environnements d'application
  • Reproduit de vrais processus métier avec des scripts

5. Chargeur

Chargeur

Site Web : https://loader.io/

Prix: à partir de 0 $

Par rapport à ce que nous avons montré jusqu'à présent, Loader est un outil beaucoup plus simple et plus basique. Son plan gratuit prend en charge les tests de charge avec jusqu'à 10,000 XNUMX utilisateurs virtuels, ce qui est suffisant pour la plupart des sites Web à trafic modéré.

Malheureusement, vous aurez besoin d'un plan payant pour accéder à des fonctionnalités plus avancées telles que des analyses avancées, des tests simultanés et un support prioritaire. Cependant, il est facile à utiliser, car vous ajoutez simplement votre site, spécifiez les paramètres, puis laissez le test s'exécuter.

Fonctionnalités

  • Graphiques et statistiques partageables
  • Utilisable dans un format GUI ou API
  • Prise en charge de la vérification DNS et des chargeurs prioritaires

6. Gatling

Page d'accueil de Gatling

Site Web : https://gatling.io/

Prix: à partir de 0 $

Gatling est disponible en deux versions, Open Source ou Enterprise. Le premier vous permet de tester la charge en tant qu'intégration avec votre propre pipeline de développement. Il comprend à la fois un enregistreur Web et un générateur de rapports avec le plan. La version Entreprise a des déploiements sur site ou vous pouvez opter pour une version Cloud basée sur Amazon Web Services (AWS).

Bien que ces deux versions soient riches en fonctionnalités, la version Enterprise prend en charge quelques extras qui ne sont pas fournis avec Open Source. Par exemple, il a une interface de gestion plus utilisable et prend en charge un plus large éventail d'intégrations.

Fonctionnalités

  • Script multi-protocoles
  • Tests et débit illimités
  • Gatling scripting DSL

7. Le moulin

Outil de test de charge de broyeur

Site Web : http://grindr.sourceforge.net/

Prix: à partir de 0 $

Grinder est open source tout le long et est probablement la seule option vraiment gratuite sur cette liste. Cependant, il doit être exécuté localement dans votre propre environnement de développement et nécessite quelques éléments supplémentaires tels que Java pour fonctionner.

Cependant, étant open source, il a été largement adopté et les développeurs ont proposé un grand nombre de plugins qui l'étendent considérablement en termes de capacité d'utilisation et de fonctionnalité. Pourtant, à moins que vous ne soyez un développeur ou si orienté, The Grinder pourrait être un peu difficile à utiliser.

Fonctionnalités

  • Scripting flexible basé sur Jython et Clojure
  • Hautement modulaire avec des tonnes de plugins
  • Framework distribué et support HTTP mature

Quand charger testez votre site Web?

Si vous avez jeté un œil à la plupart des outils disponibles, vous aurez probablement remarqué que beaucoup d'entre eux proposent soit des comptes d'essai, soit une forme de version gratuite limitée. Cela les rend facilement disponibles pour une utilisation auprès d'un large public.

La plupart des propriétaires de sites Web doivent se préoccuper performances d'hébergement car elle affecte bien plus que simplement l'expérience utilisateur. Pour de nombreux propriétaires d'entreprise, la disponibilité de votre site Web est également une question de réputation de la marque.

Les sites en croissance doivent être particulièrement prudents quant à la disponibilité et l’évolutivité des ressources utilisées l'hébergement de votre site web. Dans la plupart des cas, un pourcentage élevé du temps de réponse des utilisateurs est consacré à la surface de votre site. Cependant, à mesure que les sites augmentent en volume de trafic, cela peut changer.

Plus de trafic signifie généralement une croissance disproportionnée du traitement du backend et votre système aura du mal à augmenter. Beaucoup dépendra de variables propres au développement de votre site, il n'est donc pas possible de vous donner un nombre solide de visiteurs à quel moment cela se produira.

Pour voir de manière réaliste les performances de votre site, vous devez effectuer des tests de charge. Le moment exact de le faire est discutable, mais mon conseil serait de planifier à l'avance et de tester tôt.

Que vérifier lors des tests de charge?

Comme son nom l'indique, votre fonction principale devrait être la base de la performance de votre site sous des charges. Cela vous permettra d'observer un certain nombre de choses telles que:

  1. À quel moment les performances de votre site commencent à se dégrader
  2. Que se passe-t-il réellement lorsque le service se dégrade

Lorsque j'ai mentionné comment différents sites peuvent réagir différemment en fonction de leur architecture, c'était un signal destiné à vous faire comprendre que tous les sites n'échouent pas de la même manière. Certains sites gourmands en bases de données pourrait échouer sur ce point, tandis que d'autres peuvent souffrir Échecs d'E / S basé sur les charges de connexion au serveur.

Pour cette raison, vous devez être prêt à configurer une variété de tests pour comprendre comment votre site et votre serveur se comporteront dans divers scénarios. Sur la base de ceux-ci, surveillez de près quelques mesures clés telles que le temps de réponse de votre serveur, le nombre d'erreurs qui se produisent et les zones dans lesquelles ces erreurs peuvent se trouver.

La génération de scripts complexes et d'exécutions avec la logique qui l'accompagne peut être difficile. Je suggère que vous abordiez le test de charge progressivement. Commencez par un test de force brute qui testera simplement votre site sous un flux de trafic en constante augmentation.

Au fur et à mesure que vous acquérez de l'expérience, ajoutez d'autres éléments tels que le comportement variable, le développement de vos scripts et de votre logique au fil du temps.

Conclusion: certains valent mieux que rien

En ce qui concerne les tests de charge, il est préférable de commencer par les bases que de ne pas commencer du tout. Si vous êtes un débutant dans tout cela, essayez de faire vos tests sur un miroir alternatif ou hors ligne si possible - évitez de tester la charge d'un site en direct si vous le pouvez!

Si vous débutez maintenant, assurez-vous de créer un enregistrement de vos tests. Test de performance est un parcours qui doit accompagner le développement de votre site au fur et à mesure de sa croissance. Le processus peut être fatigant, mais n'oubliez pas que le fait de ne pas avoir de dossier peut rendre les évaluations futures beaucoup plus difficiles pour vous.

À propos de Jerry Low

Fondateur de WebHostingSecretRevealed.net (WHSR) - une critique d'hébergement approuvée et utilisée par les utilisateurs de 100,000. Plus de 15 ans d'expérience dans l'hébergement web, le marketing d'affiliation et le référencement. Contributeur à ProBlogger.net, Business.com, SocialMediaToday.com, et plus encore.