ab
est un utilitaire qui vous permet de tester les
performances de votre serveur HTTP Apache. Il a été conçu pour vous
donner une idée du degré de performances de votre installation
d'Apache. Il vous permet en particulier de déterminer le nombre de
réquêtes que votre installation d'Apache est capable de servir par
seconde.
ab
[ -A nom-utilisateur:mot-de-passe ]
[ -b taille-tampon ]
[ -B adresse-locale ]
[ -c simultanéité ]
[ -C nom-cookie=valeur ]
[ -d ]
[ -e fichier-csv ]
[ -E fichier du certificat client ]
[ -f protocole ]
[ -g fichier-gnuplot ]
[ -h ]
[ -H en-tête-personnalisé ]
[ -i ]
[ -k ]
[ -l ]
[ -m HTTP-method ]
[ -n requêtes ]
[ -p fichier-POST ]
[ -P
nom-utilisateur-mandataire:mot-de-passe ]
[ -q ]
[ -r ]
[ -s timeout ]
[ -S ]
[ -t limite-de-durée ]
[ -T type-de-contenu ]
[ -u fichier PUT ]
[ -v verbosité]
[ -V ]
[ -w ]
[ -x <table>-attributs ]
[ -X mandataire[:port] ]
[ -y <tr>-attributs ]
[ -z <td>-attributs ]
[ -Z algorithme-chiffrement ]
[http[s]://]nom-serveur[:port]/chemin
-A nom-utilisateur:mot-de-passe
:
et transmis sous forme codée base64.
La chaîne est envoyée que le serveur en ait besoin ou non (qu'il ait
renvoyé un code "401 authentication needed" ou non).-b taille-tampon
-B adresse-locale
-c simultanéité
-C nom-cookie=valeur
Cookie:
à la requête. L'argument
se présente en général sous la forme d'une
paire nom=valeur
. Ce champ peut
être répété.-d
-e fichier-csv
-E fichier du certificat client
-f protocole
-g fichier-gnuplot
-h
-H en-tête-personnalisé
"Accept-Encoding: zip/zop;8bit"
).-i
HEAD
plutôt que
GET
.-k
-l
-m HTTP-method
-n requêtes
-p fichier-POST
-T
.-P nom-utilisateur-mandataire:mot-de-passe
:
et envoyés sur le
réseau codés en base64. La chaîne est envoyée, que le mandataire en
ait besoin ou non (qu'il ait renvoyé un code "407 proxy
authentication needed" ou non).-q
ab
affiche la progression du traitement sur stderr
tous
les 10% du nombre total ou toutes les 100 requêtes. Le drapeau
-q
permet de supprimer ces messages.-r
-s timeout
-S
-t limite-durée
-n 50000
en interne. Utilisez cette option
si vous souhaitez tester les performances du serveur pendant une
durée fixée à l'avance. Par défaut, il n'y a pas de limite de
durée.-T type-contenu
application/x-www-form-urlencoded
.
La valeur par défaut est text/plain
.-u fichier PUT
-T
.-v verbosité
4
et
supérieurs permettent d'afficher des informations à propos des
en-têtes, les niveaux 3
et supérieurs les codes de
réponse (404, 200, etc...), et les niveaux 2
et
supérieurs les messages d'avertissement et d'information.-V
-w
-x <table>-attributs
<table>
. Les attributs sont insérés
<table ici >
.-X mandataire[:port]
-y <tr>-attributs
<tr>
.-z <td>-attributs
<td>
.-Z algorithme-chiffrement
Vous touverez dans ce qui suit la liste des valeurs retournées
par ab
:
concurrency *
timetaken * 1000 / done
, alors que la seconde valeur est
calculée selon la formule timetaken * 1000 / done
.totalread / 1024 / timetaken
.De nombreux tampons de taille fixe sont déclarés statiquement. Combiné avec l'interprétation poussive des arguments de la ligne de commande, les en-têtes de réponse du serveur et autres entrées externes, ceci peut vous affecter.
HTTP/1.x n'est pas complètement implémenté ; seules certaines
formes de réponses 'attendues' sont acceptées. L'utilisation
relativement intense de strstr(3)
provoque un affichage
en tête de profil, ce qui peut faire croire à un problème de
performances ; en d'autres termes, vous mesurez les performances de
ab
plutôt que celles du serveur.