Configuration à l'exécution

Le comportement de ces fonctions est affecté par la configuration dans le fichier php.ini.

Options de configuration memcache
Nom Défaut Modifiable Historique
memcache.allow_failover "1" PHP_INI_ALL Disponible depuis memcache 2.0.2.
memcache.max_failover_attempts "20" PHP_INI_ALL Disponible depuis memcache 2.1.0.
memcache.chunk_size "8192" PHP_INI_ALL Disponible depuis memcache 2.0.2.
memcache.default_port "11211" PHP_INI_ALL Disponible depuis memcache 2.0.2.
memcache.hash_strategy "standard" PHP_INI_ALL Disponible depuis memcache 2.2.0.
memcache.hash_function "crc32" PHP_INI_ALL Disponible depuis memcache 2.2.0.
session.save_handler "files" PHP_INI_ALL Supporté depuis memcache 2.1.2
session.save_path "" PHP_INI_ALL Supporté depuis memcache 2.1.2
memcache.protocol ascii PHP_INI_ALL Supporté depuis memcache 3.0.0
memcache.redundancy 1 PHP_INI_ALL Supporté depuis memcache 3.0.0
memcache.session_redundancy 2 PHP_INI_ALL Supporté depuis memcache 3.0.0
memcache.compress_threshold 20000 PHP_INI_ALL Supporté depuis memcache 3.0.3
memcache.lock_timeout 15 PHP_INI_ALL Supporté depuis memcache 3.0.4
Pour plus de détails sur les modes PHP_INI_*, reportez-vous à Où une directive de configuration peut être modifiée.

Voici un éclaircissement sur l'utilisation des directives de configuration.

memcache.allow_failover booléen

Si l'on doit basculer sur d'autres serveurs en cas d'erreur.

memcache.max_failover_attempts entier

Définit combien de serveurs à essayer lorsque l'on fixe ou récupère des données. Utilisez seulement en conjonction avec memcache.allow_failover.

memcache.chunk_size entier

Les données doivent être transférées en morceaux de cette taille ; Configurer cette valeur à une petite valeur provoque plus d'écritures sur le réseau. Essayez d'augmenter cette valeur à 32768 si vous rencontrez des ralentissements inexplicables.

memcache.default_port chaîne de caractères

Le numéro du port TCP par défaut à utiliser lors de la connexion au serveur memcache si aucun autre port n'est spécifié.

memcache.hash_strategy string

Contrôle la stratégie à appliquer lors du mappage des clés sur les serveurs. Définir cette valeur à consistent pour activer la cohérence de hashage qui permet aux serveurs d'être ajoutés ou supprimés de la réserver sans pour autant avoir besoin d'effectuer un nouveau mappage des clés. Définir cette valeur à standard fera que l'ancienne stratégie sera utilisée.

memcache.hash_function string

Contrôle la fonction de hashage à appliquer lors du mappage des clés sur les serveurs, crc32 utilisera le CRC32 standard, tandis que fnv utilisera FNV-1a.

session.save_handler chaîne de caractères

Utilisez memcache comme gestionnaire de session en définissant cette valeur à memcache.

session.save_path chaîne de caractères

Définit les URL serveur, séparées par une virgule, à utiliser pour le stockage des sessions, par exemple : "tcp://host1:11211, tcp://host2:11211".

Chaque URL peut contenir des paramètres qui seront appliqués au serveur, de la même façon que pour la méthode Memcache::addServer(). Par exemple : "tcp://host1:11211?persistent=1&weight=1&timeout=1&retry_interval=15"

memcache.protocol string

memcache.redundancy integer

memcache.session_redundancy integer

memcache.compress_threshold integer

memcache.lock_timeout integer

add a note add a note

User Contributed Notes 1 note

up
2
kross at escapistmag dot com
4 years ago
There's a currently undocumented variable that is now available (you can see it in php_info()) for session handling:

memcache.session_redundancy

The default seems to be "2", and it is supposed to influence how many copies of a particular session object that Memcache will store for failover purposes (so with a redundancy of 2, it will store a session on 2 different shards).

This will add slight overhead with extra writes, but overall seems worth it for purposes of failover.
To Top