Apache Bench - Présentation

Les tests de performance se sont révélés cruciaux pour le succès d'une entreprise. Non seulement un site peu performant subit des pertes financières, mais cela peut aussi parfois entraîner des répercussions juridiques.

Personne ne veut supporter un site lent et peu fiable dans des interactions en ligne importantes telles que les achats, les tests en ligne, le paiement de factures, etc. Avec Internet étant si largement disponible, la gamme d'alternatives est immense. Il est plus facile de perdre de la clientèle que d'en gagner et la performance change la donne.

Besoin d'un outil de test de charge

Si nous pouvons comprendre quel est le besoin d'un outil de test de charge, cela nous donnera la raison et la motivation de l'utiliser. Certains sites commerciaux célèbres ont subi de graves temps d'arrêt lorsqu'ils reçoivent un grand nombre de visiteurs. Les sites Web de commerce électronique investissent massivement dans les campagnes publicitaires, mais pas dans les tests de charge. Par conséquent, ils ne parviennent pas à garantir des performances système optimales, lorsque ce marketing génère du trafic.

Un autre exemple familier d'ignorance des tests de charge est celui de «l'erreur d'établissement de la connexion» dans les sites Web WordPress. Par conséquent, il est judicieux de tester en charge un site Web ou une application avant son déploiement en production. Il est agréable d'établir rapidement un meilleur scénario pour un projet avant d'exécuter des tests plus détaillés ultérieurement.

Qu'est-ce qu'Apache Bench?

Apache Bench (ab) est un outil de l'organisation Apache pour l'analyse comparative d'un serveur Web HTTP (Hypertext Transfer Protocol). Bien qu'il soit conçu pour mesurer les performances du serveur Web Apache, il peut également être utilisé pour tester tout autre serveur Web tout aussi bon. Avec cet outil, vous pouvez rapidement connaître le nombre de requêtes par seconde que votre serveur Web est capable de traiter.

Caractéristiques d'Apache Bench

Voyons les principales fonctionnalités et limitations d'Apache Bench. Les fonctionnalités et limitations sont répertoriées ci-dessous -

  • Étant un logiciel open source, il est disponible gratuitement.

  • Il s'agit d'un simple programme informatique en ligne de commande.

  • C'est un outil indépendant de la plate-forme. Cela signifie qu'il peut être appelé aussi bien sur Linux / Unix que sur un serveur Windows.

  • Il peut effectuer des tests de charge et de performances uniquement pour le serveur Web - HTTP ou HTTPS.

  • Ce n'est pas extensible.

Apache Bench utilise un seul thread du système d'exploitation quel que soit le niveau de concurrence (spécifié par l'indicateur -c). Par conséquent, lors de l'analyse comparative des serveurs haute capacité, une seule instance d'Apache Bench peut elle-même constituer un goulot d'étranglement. Pour saturer complètement l'URL cible, il est préférable d'utiliser des instances supplémentaires d'Apache Bench en parallèle, si votre serveur dispose de plusieurs cœurs de processeur.

Précaution

Vous devez être conscient qu'il n'y a pas de directive dans Apache Bench pour augmenter la concurrence à des intervalles particuliers lors de l'exécution des tests. Par conséquent, exécuter des tests de charge à l'aide de ab équivaut à une attaque par déni de service (DOS). Il est recommandé d'informer et d'obtenir l'autorisation préalable de votre fournisseur de services VPS si vous prévoyez d'effectuer des tests de charge lourde pendant une longue période. Ils vous attribueront un intervalle de temps approprié ou décaleront votre nœud pour la tâche de test de charge.

Deuxièmement, si vous testez le site Web d'un tiers en continu et pendant une longue période juste pour apprendre Apache Bench à partir de votre VPS (qui devient le nœud de test), il existe une possibilité distante que votre IP publique VPS puisse être bloquée par le site Web du tiers. en permanence. Dans ce cas, vous ne pourrez pas vous connecter à ce site Web avec la même adresse IP. Mais si vous souhaitez vraiment vous connecter au site Web à l'avenir, la seule solution sera de parler à l'administrateur système du site Web cible, ou de créer une nouvelle instance du serveur avec une adresse IP différente avec l'aide de votre fournisseur de services VPS.

Après vous avoir prévenu, permettez-moi de vous assurer que tous les tests de ce didacticiel sont suffisamment sûrs et sortent de ce que les administrateurs système appellent généralement les pratiques «d'abus du système».