mirror of
https://github.com/macintoshplus/doc-fr.git
synced 2026-03-25 17:32:07 +01:00
390 lines
14 KiB
XML
390 lines
14 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!-- EN-Revision: 2b5c6c13ce31e8da096cca92b92e11fd4087973b Maintainer: moradZahid Status: ready -->
|
|
<!-- Reviewed: no -->
|
|
<section xml:id="apcu.configuration" xmlns="http://docbook.org/ns/docbook">
|
|
&reftitle.runtime;
|
|
&extension.runtime;
|
|
<para>
|
|
Bien que les réglages par défaut d'APCu fonctionnent correctement sur de nombreuses
|
|
installations, il est utile de penser à ajuster ces paramètres de configuration.
|
|
</para>
|
|
<para>
|
|
Une question importante pour la configuration d'APCu est
|
|
quelle est la taille adéquate qui doit être allouée dans la mémoire à APCu.
|
|
La directive ini qui contrôle ce paramètre est <literal>apc.shm_size</literal>.
|
|
Le paragraphe ci-dessous est important pour répondre à cette question.
|
|
</para>
|
|
<para>
|
|
Une fois le serveur lancé, le script <literal>apc.php</literal>, disponible avec
|
|
l'extension, peut être copié dans le document root et exécuté par le
|
|
navigateur. Ce script fournit une analyse détaillée du fonctionnement interne
|
|
de APCu. Si la bibliothèque GD est activée dans PHP alors le script peut afficher
|
|
des graphiques pertinents. Par exemple, si APCu est en fonctionnement, le nombre
|
|
<literal>Cache full count</literal> (sur la gauche) indique le nombre de fois que
|
|
le cache a atteint sa capacité maximale et a été obligé de supprimer toute entrée
|
|
qui n'a pas été appelée dans les dernières <literal>apc.ttl</literal> secondes.
|
|
Ce nombre doit être le plus petit possible pour une configuration optimale.
|
|
Si le cache est constamment rempli, il sera obligé de libérer de l'espace ce qui
|
|
aura pour conséquence de diminuer ses performances.
|
|
La méthode la plus simple pour minimiser ce nombre est d'allouer plus de mémoire à
|
|
APCu.
|
|
</para>
|
|
<para>
|
|
Lorsque APCu est compilé avec mmap (Memory Mapping), il n'utilisera qu'un seul
|
|
segment de mémoire, contrairement au cas où APCu est construit avec
|
|
SHM (SysV Shared Memory) qui utilise plusieurs segments de mémoire. MMAP n'a
|
|
pas de limite maximale comme SHM dans <literal>/proc/sys/kernel/shmmax</literal>.
|
|
En général, l'utilisation de MMAP est recommandée car il réclame la mémoire
|
|
plus vite lorsque le serveur web est redémarré et réduit l'impact sur
|
|
l'allocation de mémoire au démarrage.
|
|
</para>
|
|
<para>
|
|
<table>
|
|
<title>Options de configuration d'APCu</title>
|
|
<tgroup cols="4">
|
|
<thead>
|
|
<row>
|
|
<entry>&Name;</entry>
|
|
<entry>&Default;</entry>
|
|
<entry>&Changeable;</entry>
|
|
<entry>&Changelog;</entry>
|
|
</row>
|
|
</thead>
|
|
<tbody>
|
|
<row>
|
|
<entry><link linkend="ini.apcu.enabled">apc.enabled</link></entry>
|
|
<entry>"1"</entry>
|
|
<entry>PHP_INI_SYSTEM</entry>
|
|
<entry></entry>
|
|
</row>
|
|
<row>
|
|
<entry><link linkend="ini.apcu.shm-segments">apc.shm_segments</link></entry>
|
|
<entry>"1"</entry>
|
|
<entry>PHP_INI_SYSTEM</entry>
|
|
<entry></entry>
|
|
</row>
|
|
<row>
|
|
<entry><link linkend="ini.apcu.shm-size">apc.shm_size</link></entry>
|
|
<entry>"32M"</entry>
|
|
<entry>PHP_INI_SYSTEM</entry>
|
|
<entry></entry>
|
|
</row>
|
|
<row>
|
|
<entry><link linkend="ini.apcu.entries-hint">apc.entries_hint</link></entry>
|
|
<entry>"4096"</entry>
|
|
<entry>PHP_INI_SYSTEM</entry>
|
|
<entry></entry>
|
|
</row>
|
|
<row>
|
|
<entry><link linkend="ini.apcu.ttl">apc.ttl</link></entry>
|
|
<entry>"0"</entry>
|
|
<entry>PHP_INI_SYSTEM</entry>
|
|
<entry></entry>
|
|
</row>
|
|
<row>
|
|
<entry><link linkend="ini.apcu.gc-ttl">apc.gc_ttl</link></entry>
|
|
<entry>"3600"</entry>
|
|
<entry>PHP_INI_SYSTEM</entry>
|
|
<entry></entry>
|
|
</row>
|
|
<row>
|
|
<entry><link linkend="ini.apcu.mmap-file-mask">apc.mmap_file_mask</link></entry>
|
|
<entry>NULL</entry>
|
|
<entry>PHP_INI_SYSTEM</entry>
|
|
<entry></entry>
|
|
</row>
|
|
<row>
|
|
<entry><link linkend="ini.apcu.slam-defense">apc.slam_defense</link></entry>
|
|
<entry>"1"</entry>
|
|
<entry>PHP_INI_SYSTEM</entry>
|
|
<entry></entry>
|
|
</row>
|
|
<row>
|
|
<entry><link linkend="ini.apcu.enable-cli">apc.enable_cli</link></entry>
|
|
<entry>"0"</entry>
|
|
<entry>PHP_INI_SYSTEM</entry>
|
|
<entry></entry>
|
|
</row>
|
|
<row>
|
|
<entry><link linkend="ini.apcu.use-request-time">apc.use_request_time</link></entry>
|
|
<entry>"0"</entry>
|
|
<entry>PHP_INI_ALL</entry>
|
|
<entry>Antérieurement à APCu 5.1.19, la valeur par défaut était "1".</entry>
|
|
</row>
|
|
<row>
|
|
<entry><link linkend="ini.apcu.serializer">apc.serializer</link></entry>
|
|
<entry>"php"</entry>
|
|
<entry>PHP_INI_SYSTEM</entry>
|
|
<entry>Antérieurement à APCu 5.1.15, la valeur par défaut était "default".</entry>
|
|
</row>
|
|
<row>
|
|
<entry><link linkend="ini.apcu.coredump-unmap">apc.coredump_unmap</link></entry>
|
|
<entry>"0"</entry>
|
|
<entry>PHP_INI_SYSTEM</entry>
|
|
<entry></entry>
|
|
</row>
|
|
<row>
|
|
<entry><link linkend="ini.apcu.preload-path">apc.preload_path</link></entry>
|
|
<entry>NULL</entry>
|
|
<entry>PHP_INI_SYSTEM</entry>
|
|
<entry></entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</table>
|
|
&ini.php.constants;
|
|
</para>
|
|
|
|
&ini.descriptions.title;
|
|
|
|
<para>
|
|
<variablelist>
|
|
<varlistentry xml:id="ini.apcu.enabled">
|
|
<term>
|
|
<parameter>apc.enabled</parameter>
|
|
<type>bool</type>
|
|
</term>
|
|
<listitem>
|
|
<para>
|
|
<literal>apc.enabled</literal> peut être mis à 0 pour désactiver APC.
|
|
Cela peut s'avérer utile lorsqu'APC est compilé statiquement dans PHP
|
|
puisqu'il n'y a pas d'autre moyen de le désactiver (lorsque APC est
|
|
compilé en tant que DSO, la ligne <literal>extension</literal>
|
|
dans le fichier <literal>php.ini</literal> peut simplement être mise en
|
|
commentaire).
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry xml:id="ini.apcu.shm-segments">
|
|
<term>
|
|
<parameter>apc.shm_segments</parameter>
|
|
<type>int</type>
|
|
</term>
|
|
<listitem>
|
|
<para>
|
|
Le nombre de segments de mémoire partagée à allouer au cache de compilation
|
|
Si APC manque de mémoire partagée mais que <literal>apc.shm_size</literal>
|
|
est mis à la valeur maximale autorisée par le système, alors augmenter
|
|
cette valeur peut empêcher APC d'épuiser sa mémoire.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry xml:id="ini.apcu.shm-size">
|
|
<term>
|
|
<parameter>apc.shm_size</parameter>
|
|
<type>string</type>
|
|
</term>
|
|
<listitem>
|
|
<para>
|
|
La taille de chaque segment de mémoire partagée donnée en notation abrégée
|
|
comme indiquée dans cette <link linkend="faq.using.shorthandbytes">FAQ</link>.
|
|
Par défaut, certains systèmes (dont la plus part des variants de BSD)
|
|
ont une limite très basse pour la taille d'un segment de mémoire partagée.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry xml:id="ini.apcu.entries-hint">
|
|
<term>
|
|
<parameter>apc.entries_hint</parameter>
|
|
<type>int</type>
|
|
</term>
|
|
<listitem>
|
|
<para>
|
|
Un "indice" sur le nombre de variables distinctes qui peuvent être stockées.
|
|
Mettre à zéro ou dans le doute omettre.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry xml:id="ini.apcu.ttl">
|
|
<term>
|
|
<parameter>apc.ttl</parameter>
|
|
<type>int</type>
|
|
</term>
|
|
<listitem>
|
|
<para>
|
|
La durée en seconde qu'une entrée de cache est autorisée à
|
|
rester inactive dans son emplacement, au cas où cet emplacement
|
|
est réclamée par une autre entrée. Laisser à zéro cette valeur
|
|
signifie que potentiellement, le cache d'APC pourrait être
|
|
rempli par des entrées jamais appelées alors que de nouvelles
|
|
entrées ne seront pas mises en cache. Lorsqu'un événement signalant le manque
|
|
de mémoire disponible se produit, le cache sera complètement effacé si
|
|
<literal>apc.ttl</literal> est égal à 0. Sinon, lorsque
|
|
<literal>apc.ttl</literal> est strictement supérieur à 0, APC tentera
|
|
de retirer les entrées dont la durée de vie a expiré.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry xml:id="ini.apcu.gc-ttl">
|
|
<term>
|
|
<parameter>apc.gc_ttl</parameter>
|
|
<type>int</type>
|
|
</term>
|
|
<listitem>
|
|
<para>
|
|
La durée en seconde qu'une entrée de cache peut rester dans la liste du
|
|
ramasse-miettes. Cette valeur fournit une sûreté intégrée dans le cas
|
|
où un processus s'arrête pendant qu'il exécute le code d'un fichier
|
|
source mis en cache; si ce fichier est modifié, la mémoire allouée pour
|
|
l'ancienne version ne sera pas réclamée tant que la durée de vie n'est
|
|
pas atteinte. Mettre à zéro pour désactiver cette fonctionnalité.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry xml:id="ini.apcu.mmap-file-mask">
|
|
<term>
|
|
<parameter>apc.mmap_file_mask</parameter>
|
|
<type>string</type>
|
|
</term>
|
|
<listitem>
|
|
<para>
|
|
Si APCu a été compilé avec l'option MMAP en utilisant
|
|
<literal>--enable-mmap</literal>, ce paramètre reçoit le masque de
|
|
fichier de type mktemp-style à passer au module mmap pour déterminer
|
|
si la région de la mémoire utilisant mmap sera sauvegardée par le biais
|
|
d'un fichier ou par celui de la mémoire partagée.
|
|
Dans le cas où la sauvegarde se fait par le biais d'un fichier,
|
|
le masque sera de la forme <literal>/tmp/apc.XXXXXX</literal>
|
|
(avec exactement 6 <literal>X</literal>).
|
|
Pour utiliser shm_open/mmap de la norme POSIX, le masque doit contenir
|
|
<literal>.shm</literal>, comme dans l'exemple suivant:
|
|
<literal>/apc.shm.XXXXXX</literal>. Ce paramètre peut être défini par
|
|
<literal>/dev/zero</literal> pour utiliser l'interface
|
|
<literal>/dev/zero</literal> du noyau avec une mémoire utilisant mmap
|
|
anonymement. Laisser ce paramètre indéfini forcera un mmap anonyme.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry xml:id="ini.apcu.slam-defense">
|
|
<term>
|
|
<parameter>apc.slam_defense</parameter>
|
|
<type>int</type>
|
|
</term>
|
|
<listitem>
|
|
<para>
|
|
Au démarrage ou lors de la modification d'un fichier dans un serveur
|
|
très occupé, plusieurs processus peuvent entrer en compétition
|
|
pour mettre en cache un même fichier en même temps. Cette option
|
|
permet de définir la proportion des processus qui ne tenteront pas
|
|
de mettre en cache le même fichier au même instant, exprimée en
|
|
pourcentage. Autrement dit, elle définit la probabilité qu'un
|
|
seul processus n'essaie pas d'accéder au cache. Par exemple
|
|
définir <literal>apc.slam_defense</literal>
|
|
à <literal>75</literal> signifie qu'il y a 75% de chance pour
|
|
qu'un processus ne mette pas en cache un fichier non présent dans le
|
|
cache. Donc plus cette valeur est haute et plus la protection
|
|
contre le cache slam est importante. Mettre cette valeur à
|
|
<literal>0</literal> désactive cette option.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry xml:id="ini.apcu.enable-cli">
|
|
<term>
|
|
<parameter>apc.enable_cli</parameter>
|
|
<type>int</type>
|
|
</term>
|
|
<listitem>
|
|
<para>
|
|
Principalement utilisé pour les tests et le débogage. Définir ce
|
|
paramètre permet d'activer APC dans la version CLI de PHP.
|
|
En temps normal, il n'est pas idéal de créer, alimenter et
|
|
détruire le cache APC à chaque requête CLI. Cependant, dans de
|
|
nombreux scénarios de test il est utile de pouvoir activer
|
|
facilement APC dans la version CLI de PHP.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry xml:id="ini.apcu.serializer">
|
|
<term>
|
|
<parameter>apc.serializer</parameter>
|
|
<type>string</type>
|
|
</term>
|
|
<listitem>
|
|
<para>
|
|
Ce paramètre permet à APC d'utiliser un linéariseur tiers
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry xml:id="ini.apcu.coredump-unmap">
|
|
<term>
|
|
<parameter>apc.coredump_unmap</parameter>
|
|
<type>bool</type>
|
|
</term>
|
|
<listitem>
|
|
<para>
|
|
Active la gestion par APC de signaux, tels que SIGSEGV, qui provoquent
|
|
l'écriture de fichiers core dump lorsqu'ils sont reçus. Quand ces
|
|
signaux sont reçus, APC essaiera de désallouer le segment de mémoire
|
|
partagée réservé à mmap dans le but de l'exclure du fichier core
|
|
dump. Cette option peut améliorer la stabilité du système lorsque
|
|
des signaux fatals sont reçus et qu'APC est configuré avec un long
|
|
segment de mémoire partagée.
|
|
</para>
|
|
<warning>
|
|
<para>
|
|
Cette option est potentiellement dangereuse. Désallouer un segment de
|
|
mémoire partagée utilisé par mmap dans le gestionnaire de signaux
|
|
fatals peut causer un comportement imprévisible si une erreur fatale
|
|
survient.
|
|
</para>
|
|
</warning>
|
|
<note>
|
|
<para>
|
|
Bien que certains noyaux peuvent fournir la possibilité d'ignorer
|
|
de nombreux types de mémoire partagée lorsqu'ils génèrent un fichier
|
|
core dump, ces implémentations peuvent aussi ignorer d'importants
|
|
segments de mémoire partagée tels que le tableau de bord d'Apache.
|
|
</para>
|
|
</note>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry xml:id="ini.apcu.preload-path">
|
|
<term>
|
|
<parameter>apc.preload_path</parameter>
|
|
<type>string</type>
|
|
</term>
|
|
<listitem>
|
|
<para>
|
|
Optionnel, définit un chemin vers le répertoire où APC chargera
|
|
les données du cache au démarrage.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry xml:id="ini.apcu.use-request-time">
|
|
<term>
|
|
<parameter>apc.use_request_time</parameter>
|
|
<type>bool</type>
|
|
</term>
|
|
<listitem>
|
|
<para>
|
|
Utilise la requête start time de l'interface <acronym>SAPI</acronym>
|
|
pour la durée de vie (<acronym>TTL</acronym>).
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
</para>
|
|
</section>
|
|
|
|
<!-- Keep this comment at the end of the file
|
|
Local variables:
|
|
mode: sgml
|
|
sgml-omittag:t
|
|
sgml-shorttag:t
|
|
sgml-minimize-attributes:nil
|
|
sgml-always-quote-attributes:t
|
|
sgml-indent-step:1
|
|
sgml-indent-data:t
|
|
indent-tabs-mode:nil
|
|
sgml-parent-document:nil
|
|
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
|
|
sgml-exposed-tags:nil
|
|
sgml-local-catalogs:nil
|
|
sgml-local-ecat-files:nil
|
|
End:
|
|
vim600: syn=xml fen fdm=syntax fdl=2 si
|
|
vim: et tw=78 syn=sgml
|
|
vi: ts=1 sw=1
|
|
-->
|