<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr"><head><!--
        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
              This file is generated from xml source: DO NOT EDIT
        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
      -->
<title>ab - L'outil de test des performances du serveur HTTP
Apache - Serveur Apache HTTP</title>
<link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
<link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
<link href="../style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" /><link rel="stylesheet" type="text/css" href="../style/css/prettify.css" />
<script src="../style/scripts/prettify.js" type="text/javascript">
</script>

<link href="../images/favicon.ico" rel="shortcut icon" /></head>
<body id="manual-page"><div id="page-header">
<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossaire</a> | <a href="../sitemap.html">Plan du site</a></p>
<p class="apache">Serveur Apache HTTP Version 2.4</p>
<img alt="" src="../images/feather.gif" /></div>
<div class="up"><a href="./"><img title="&lt;-" alt="&lt;-" src="../images/left.gif" /></a></div>
<div id="path">
<a href="http://www.apache.org/">Apache</a> &gt; <a href="http://httpd.apache.org/">Serveur HTTP</a> &gt; <a href="http://httpd.apache.org/docs/">Documentation</a> &gt; <a href="../">Version 2.4</a> &gt; <a href="./">Programmes</a></div><div id="page-content"><div id="preamble"><h1>ab - L'outil de test des performances du serveur HTTP
Apache</h1>
<div class="toplang">
<p><span>Langues Disponibles: </span><a href="../en/programs/ab.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
<a href="../fr/programs/ab.html" title="Français">&nbsp;fr&nbsp;</a> |
<a href="../ko/programs/ab.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
<a href="../tr/programs/ab.html" hreflang="tr" rel="alternate" title="Türkçe">&nbsp;tr&nbsp;</a></p>
</div>

    <p><code>ab</code> 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.</p>
</div>
<div id="quickview"><ul id="toc"><li><img alt="" src="../images/down.gif" /> <a href="#synopsis">Syntaxe</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#options">Options</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#output">Sortie</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#bugs">Bogues</a></li>
</ul><h3>Voir aussi</h3><ul class="seealso"><li><code class="program"><a href="../programs/httpd.html">httpd</a></code></li></ul><ul class="seealso"><li><a href="#comments_section">Commentaires</a></li></ul></div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="synopsis" id="synopsis">Syntaxe</a></h2>
    <p><code><strong>ab</strong>
    [ -<strong>A</strong> <var>nom-utilisateur</var>:<var>mot-de-passe</var> ]
    [ -<strong>b</strong> <var>taille-tampon</var> ]
    [ -<strong>B</strong> <var>adresse-locale</var> ]
    [ -<strong>c</strong> <var>simultanéité</var> ]
    [ -<strong>C</strong> <var>nom-cookie</var>=<var>valeur</var> ]
    [ -<strong>d</strong> ]
    [ -<strong>e</strong> <var>fichier-csv</var> ]
    [ -<strong>f</strong> <var>protocole</var> ]
    [ -<strong>g</strong> <var>fichier-gnuplot</var> ]
    [ -<strong>h</strong> ]
    [ -<strong>H</strong> <var>en-tête-personnalisé</var> ]
    [ -<strong>i</strong> ]
    [ -<strong>k</strong> ]
    [ -<strong>n</strong> <var>requêtes</var> ]
    [ -<strong>p</strong> <var>fichier-POST</var> ]
    [ -<strong>P</strong>
    <var>nom-utilisateur-mandataire</var>:<var>mot-de-passe</var> ]
    [ -<strong>q</strong> ]
    [ -<strong>r</strong> ]
    [ -<strong>s</strong> <var>timeout</var> ]
    [ -<strong>S</strong> ]
    [ -<strong>t</strong> <var>limite-de-durée</var> ]
    [ -<strong>T</strong> <var>type-de-contenu</var> ]
    [ -<strong>u</strong> <var>fichier PUT</var> ]
    [ -<strong>v</strong> <var>verbosité</var>]
    [ -<strong>V</strong> ]
    [ -<strong>w</strong> ]
    [ -<strong>x</strong> <var>&lt;table&gt;-attributs</var> ]
    [ -<strong>X</strong> <var>mandataire</var>[:<var>port</var>] ]
    [ -<strong>y</strong> <var>&lt;tr&gt;-attributs</var> ]
    [ -<strong>z</strong> <var>&lt;td&gt;-attributs</var> ]
    [ -<strong>Z</strong> <var>algorithme-chiffrement</var> ]
    [http[s]://]<var>nom-serveur</var>[:<var>port</var>]/<var>chemin</var></code></p>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="options" id="options">Options</a></h2>
    <dl>
    <dt><code>-A <var>nom-utilisateur</var>:<var>mot-de-passe</var></code></dt>
    <dd>Fournit le support d'une authentification de base vers le
    serveur. Les nom-utilisateur et mot-de-passe sont séparés par un
    seul caractère <code>:</code> 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).</dd>

    <dt><code>-b <var>taille-tampon</var></code></dt>
    <dd>Taille du tampon d'émission/réception TCP, en octets.</dd>

    <dt><code>-B <var>adresse-locale</var></code></dt>
    <dd>Adresse à laquelle se rattacher lors des connexions sortantes.</dd>

    <dt><code>-c <var>simultanéité</var></code></dt>
    <dd>Nombre de requêtes à effectuer simultanément. Par défaut, une
    seule requête est effectuée à la fois.</dd>

    <dt><code>-C <var>nom-cookie</var>=<var>valeur</var></code></dt>
    <dd>Ajoute une ligne <code>Cookie:</code> à la requête. L'argument
    se présente en général sous la forme d'une
    paire <code><var>nom</var>=<var>valeur</var></code>. Ce champ peut
    être répété.</dd>

    <dt><code>-d</code></dt>
    <dd>N'affiche pas le "pourcentage servi dans la table XX [ms]".
    (option abandonnée).</dd>

    <dt><code>-e <var>fichier-csv</var></code></dt>
    <dd>Enregistre des valeurs séparées par des virgules (CSV) dans un
    fichier, indiquant pour chaque pourcentage (de 1% à 100 %), le temps
    (en millisecondes) mis pour servir ce pourcentage de requêtes. Ce
    fichier est en général plus utile qu'un fichier 'gnuplot', car les
    résultats sont déjà sous forme binaire.</dd>

    <dt><code>-f <var>protocole</var></code></dt>
    <dd>Spécifie le protocole SSL/TLS (SSL2, SSL3, TLS1, ou ALL).</dd>

    <dt><code>-g <var>fichier-gnuplot</var></code></dt>
    <dd>Enregistre toutes les valeurs mesurées dans un fichier 'gnuplot'
    ou TSV (valeurs séparées par des tabulations). Ce fichier peut être
    facilement importé dans des programmes comme Gnuplot, IDL,
    Mathematica, Igor ou même Excel. La première ligne du fichier
    contient les noms des valeurs.</dd>

    <dt><code>-h</code></dt>
    <dd>Affiche une aide à propos de l'utilisation du programme.</dd>

    <dt><code>-H <var>en-tête-personnalisé</var></code></dt>
    <dd>Ajoute des en-têtes supplémentaires à la requête. L'argument se
    présente sous la forme d'une ligne d'en-tête valide, autrement dit
    une paire champ/valeur séparés par un caractère ':' (par exemple
    <code>"Accept-Encoding: zip/zop;8bit"</code>).</dd>

    <dt><code>-i</code></dt>
    <dd>Effectue des requêtes <code>HEAD</code> plutôt que
    <code>GET</code>.</dd>

    <dt><code>-k</code></dt>
    <dd>Active la fonctionnalité des connexions HTTP persistantes
    (KeepAlive), c'est à dire effectue plusieurs requêtes au cours d'une
    seule session HTTP. Cette fonctionnalité est désactivée par
    défaut.</dd>

    <dt><code>-n <var>requêtes</var></code></dt>
    <dd>Nombre de requêtes à effectuer au cours du test de performances.
    Par défaut, une seule requête est effectuée, ce qui ne permet pas
    d'obtenir des résultats représentatifs.</dd>

    <dt><code>-p <var>fichier-POST</var></code></dt>
    <dd>Fichier contenant les données pour les requêtes POST.
    Assurez-vous de spécifier aussi le paramètre <code>-T</code>.</dd>

    <dt><code>-P <var>nom-utilisateur-mandataire</var>:<var>mot-de-passe</var></code></dt>
    <dd>Fournit les informations d'authentification basique pour un
    mandataire en-route. Les nom d'utilisateur et mot de passe sont
    séparés par un simple caractère <code>:</code> 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).</dd>

    <dt><code>-q</code></dt>
    <dd>Lorsque plus de 150 requêtes sont traitées, <code>ab</code>
    affiche la progression du traitement sur <code>stderr</code> tous
    les 10% du nombre total ou toutes les 100 requêtes. Le drapeau
    <code>-q</code> permet de supprimer ces messages.</dd>

    <dt><code>-r</code></dt>
    <dd>Ne s'arrête pas en cas d'erreur de réception sur la connexion.</dd>

    <dt><code>-s <var>timeout</var></code></dt>
    <dd>Temps d'attente maximal du socket. La valeur par dÃ©faut est de
    30 secondes.</dd>

    <dt><code>-S</code></dt>
    <dd>N'affiche ni les valeurs de déviation standards et médianes, ni
    les messages d'erreur et d'avertissement lorsque les valeurs
    médianes et moyennes sont égales à une ou deux fois la valeur de
    déviation standard. Par défaut les valeurs mini/moyenne/maxi sont
    affichées (option historique).</dd>

    <dt><code>-t <var>limite-durée</var></code></dt>
    <dd>Durée maximale en secondes du test de performances. Ceci
    implique un <code>-n 50000</code> 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.</dd>

    <dt><code>-T <var>type-contenu</var></code></dt>
    <dd>Valeur de l'en-tête Content-type à utiliser pour les données
    POST/PUT, par exemple
    <code>application/x-www-form-urlencoded</code>.
    Valeur par défaut : <code>text/plain</code>.</dd>

    <dt><code>-u <var>fichier PUT</var></code></dt>
    <dd>Fichier contenant des données PUT.  Ne pas oublier de spécifier
    aussi <code>-T</code>.</dd>

    <dt><code>-v <var>verbosité</var></code></dt>
    <dd>Définit le niveau de verbosité - les niveaux <code>4</code> et
    supérieurs permettent d'afficher des informations à propos des
    en-têtes, les niveaux <code>3</code> et supérieurs les codes de
    réponse (404, 200, etc...), et les niveaux <code>2</code> et
    supérieurs les messages d'avertissement et d'information.</dd>

    <dt><code>-V</code></dt>
    <dd>Affiche le numéro de version et s'arrête.</dd>

    <dt><code>-w</code></dt>
    <dd>Affiche les résultats dans des tables HTML. La table par défaut
    comporte deux colonnes sur fond blanc.</dd>

    <dt><code>-x <var>&lt;table&gt;-attributs</var></code></dt>
    <dd>La chaîne à utiliser comme attributs pour
    <code>&lt;table&gt;</code>. Les attributs sont insérés
    <code>&lt;table <var>ici</var> &gt;</code>.</dd>

    <dt><code>-X <var>mandataire</var>[:<var>port</var>]</code></dt>
    <dd>Utilise un serveur mandataire pour les requêtes.</dd>

    <dt><code>-y <var>&lt;tr&gt;-attributs</var></code></dt>
    <dd>La chaîne à utiliser comme attributs pour
    <code>&lt;tr&gt;</code>.</dd>

    <dt><code>-z <var>&lt;td&gt;-attributs</var></code></dt>
    <dd>La chaîne à utiliser comme attributs pour
    <code>&lt;td&gt;</code>.</dd>

    <dt><code>-Z <var>algorithme-chiffrement</var></code></dt>
    <dd>Spécifie l'algorithme de chiffrement SSL/TLS (Voir les
    algorithme de chiffrement openssl).</dd>
    </dl>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="output" id="output">Sortie</a></h2>
    <p>Vous trouverez dans ce qui suit la liste des valeurs retournées
    par <code>ab</code> :
    </p>

    <dl>
        <dt>Server Software</dt>
        <dd>La valeur, si elle existe, de l'en-tête HTTP
	<var>server</var> renvoyée dans la première réponse réussie.
	Elle comporte tous les caractères de l'en-tête jusqu'à ce qu'un
	caractère de valeur décimale 32 soit rencontré (le plus souvent
	un espace ou une fin de ligne).</dd>

        <dt>Server Hostname</dt>
        <dd>Le nom DNS ou l'adresse IP fourni dans la ligne de commande.</dd>

        <dt>Server Port</dt>
        <dd>Le port auquel ab est connecté. Si la ligne de commande ne
	spécifie aucun port, le port par défaut sera 80 pour http et 443
	pour https.</dd>

        <dt>SSL/TLS Protocol</dt>
        <dd>Les paramètres de protocole négociés entre le client et le
	serveur. Uniquement si SSL est utilisé.</dd>

        <dt>Document Path</dt>
        <dd>L'URI de la requête interprété à partir de la chaîne de la
	ligne de commande.</dd>

        <dt>Document Length</dt>
        <dd>Il s'agit de la taille en octets du premier document renvoyé
	avec succès. Si la taille du document est modifiée au cours
	du test, la réponse est considérée comme une erreur.</dd>

        <dt>Concurrency Level</dt>
        <dd>Le nombre de clients simultanés utilisés au cours du test.</dd>

        <dt>Time taken for tests</dt>
        <dd>Il s'agit du temps écoulé entre le moment de la première
	connexion au socket et la réception de la dernière
	réponse.</dd>

        <dt>Complete requests</dt>
        <dd>Le nombre de réponses reçues avec succès.</dd>

        <dt>Failed requests</dt>
        <dd>Le nombre de requêtes considérées comme erronées. Si ce
	nombre est différent de 0, une ligne supplémentaire indiquera le
	nombre de requêtes ayant échoué suite à un problème de
	connexion, de lecture, de taille de contenu erronée ou
	d'exceptions.</dd>

        <dt>Write errors</dt>
        <dd>Le nombre d'erreurs rencontrées en cours d'écriture (broken pipe).</dd>

        <dt>Non-2xx responses</dt>
        <dd>Le nombre de réponses dont le code était en dehors de la
	série 200. Si toutes les réponses appartiennent à la série 200,
	cette ligne est absente.</dd>

        <dt>Keep-Alive requests</dt>
        <dd>Le nombre de connexions promues à l'état de connexions
	persistantes.</dd>

        <dt>Total body sent</dt>
        <dd>Si le test a été configuré dans ce sens, il s'agit du nombre
	total d'octets envoyés au cours du test. Ce champ est omis si le
	test ne prévoyait pas d'envoi de corps.</dd>

        <dt>Total transferred</dt>
        <dd>Le nombre total d'octets reçus du serveur. Ce nombre
	correspond à peu près au nombre d'octets envoyés sur la ligne.</dd>

        <dt>HTML transferred</dt>
        <dd>Le nombre total d'octets utiles (contenus) reçus du serveur.
	Ce nombre n'inclut pas les octets correspondant aux en-têtes
	HTTP.</dd>

        <dt>Requests per second</dt>
        <dd>Il s'agit du nombre de requêtes par seconde. Il correspond
	au nombre de requêtes divisé par la durée totale du traitement.</dd>

        <dt>Time per request</dt>
        <dd>La durée moyenne du traitement d'une requête. La première
	valeur est calculée selon la formule <code>concurrency *
	timetaken * 1000 / done</code>, alors que la seconde valeur est
	calculée selon la formule <code>timetaken * 1000 / done</code>.</dd>

        <dt>Transfer rate</dt>
        <dd>Le taux de transfert calculé selon la formule
	<code>totalread / 1024 / timetaken</code>.</dd>
    </dl>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="bugs" id="bugs">Bogues</a></h2>
    <p>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.</p>

    <p>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 <code>strstr(3)</code> 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
    <code>ab</code> plutôt que celles du serveur.</p>
</div></div>
<div class="bottomlang">
<p><span>Langues Disponibles: </span><a href="../en/programs/ab.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
<a href="../fr/programs/ab.html" title="Français">&nbsp;fr&nbsp;</a> |
<a href="../ko/programs/ab.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
<a href="../tr/programs/ab.html" hreflang="tr" rel="alternate" title="Türkçe">&nbsp;tr&nbsp;</a></p>
</div><div class="top"><a href="#page-header"><img src="../images/up.gif" alt="top" /></a></div><div class="section"><h2><a id="comments_section" name="comments_section">Commentaires</a></h2><div class="warning"><strong>Notice:</strong><br />This is not a Q&amp;A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our <a href="http://httpd.apache.org/lists.html">mailing lists</a>.</div>
<script type="text/javascript"><!--//--><![CDATA[//><!--
var comments_shortname = 'httpd';
var comments_identifier = 'http://httpd.apache.org/docs/2.4/programs/ab.html';
(function(w, d) {
    if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
        d.write('<div id="comments_thread"><\/div>');
        var s = d.createElement('script');
        s.type = 'text/javascript';
        s.async = true;
        s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
        (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
    }
    else { 
        d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
    }
})(window, document);
//--><!]]></script></div><div id="footer">
<p class="apache">Copyright 2013 The Apache Software Foundation.<br />Autorisé sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossaire</a> | <a href="../sitemap.html">Plan du site</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!--
if (typeof(prettyPrint) !== 'undefined') {
    prettyPrint();
}
//--><!]]></script>
</body></html>