
Cache Memcache / Redis : cocher la case ne suffit PAS (guide complet)
Prestashop ou WordPress, même combat : cocher « Activer Memcache » ou « Activer Redis » dans le back-office ne suffit absolument pas pour accélérer ton site.
Pourquoi cocher la case ne suffit pas
Sur le papier, activer Memcache ou Redis dans ton CMS ressemble à un énorme boost de performance, mais si aucun service n’écoute réellement sur le serveur, ton application « parle dans le vide » et aucun cache n’est utilisé.
Résultat : tu as coché la case, l’extension PHP est chargée, la configuration semble correcte, mais le cache reste à 0 et les scores PageSpeed ne bougent pas d’un millimètre.
Le piège classique sur Prestashop et WordPress
Le scénario typique : dans le back‑office tu coches « Memcache activé » ou « Redis activé », côté PHP l’extension est bien listée par php -m, et la config pointe vers host:127.0.0.1 avec le bon port.
Pourtant, sans service Memcached ou Redis réellement démarré au niveau système, aucune connexion n’aboutit et ton application retombe sur la base de données à chaque requête, explosant le TTFB et la charge CPU.
Rappel : c’est quoi Memcached et Redis ?
Memcached et Redis sont des systèmes de cache en mémoire vive qui stockent des données temporaires pour éviter de requêter la base de données à chaque chargement de page.
Sur Prestashop et WordPress, ils servent principalement d’object cache : ils mémorisent les résultats de requêtes fréquentes ou de calculs lourds pour répondre en quelques millisecondes.
Conséquences d’un cache « fantôme »
Quand le service n’est pas installé ou pas démarré, ton site tourne comme s’il n’y avait aucun cache, avec des temps de génération de page pouvant être multipliés par 3 à 5 par rapport à une configuration correcte.
Dans ce cas, on observe souvent un CPU serveur sur‑sollicité, un temps de réponse initial (TTFB) très long, et des scores PageSpeed qui stagnent malgré l’activation apparente du cache.
Comment vérifier si ton cache est vraiment actif
Un premier indicateur est la taille du cache et le taux de hit dans ton outil de monitoring ou ton plugin de cache object : s’ils restent proches de zéro, c’est que rien n’est réellement stocké en mémoire.
Autre signe évident : les logs PHP ou applicatifs affichent des erreurs de type « Connection refused » sur les ports 11211 (Memcached) ou 6379 (Redis), preuve que le service n’écoute pas.
Installer correctement Memcached sur ton serveur
Sur une distribution Linux classique, la première étape consiste à installer le service Memcached via le gestionnaire de paquets, par exemple avec sudo apt install memcached ou commande équivalente.
Une fois installé, Memcached démarre par défaut sur le port 11211 et doit être configuré pour écouter sur l’interface souhaitée, généralement 127.0.0.1 pour une utilisation locale côté serveur web.
Démarrer, activer et vérifier Memcached
Après l’installation, il faut démarrer le service avec systemctl start memcached puis l’activer au boot via systemctl enable memcached pour qu’il se relance automatiquement.
Tu peux vérifier son état avec systemctl status memcached et confirmer qu’il écoute bien sur le port 11211 grâce à une commande comme ss -plunt | grep memcached ou netstat -tlnp.
Tester rapidement Memcached en ligne de commande
Pour un test simple, une connexion en telnet ou netcat sur 127.0.0.1 11211 permet de confirmer que le port répond, ce qui prouve que le serveur de cache est joignable.
Il est ensuite possible d’utiliser des outils comme memcstat pour contrôler les statistiques de Memcached et vérifier que des requêtes de ton application viennent effectivement alimenter le cache.
Installation correcte de Redis
Pour Redis, l’installation passe également par le gestionnaire de paquets avec une commande du type sudo apt install redis-server, ou via les binaires officiels selon ta distribution.
Redis tourne par défaut sur le port 6379 en local et nécessite parfois quelques ajustements dans redis.conf pour adapter la mémoire, la sécurité ou l’interface réseau autorisée.
Démarrer, activer et tester Redis
Comme pour Memcached, il faut démarrer Redis via systemctl start redis-server (ou redis.service selon la distribution) puis vérifier le statut avec systemctl status.
Le test de base s’effectue avec l’outil redis-cli en envoyant la commande PING au serveur, qui doit répondre PONG si la connexion est fonctionnelle.
Aligner la configuration côté application
Une fois le service de cache opérationnel, la configuration de Prestashop ou WordPress doit pointer précisément vers le bon host et le bon port, par exemple 127.0.0.1:11211 pour Memcached ou 127.0.0.1:6379 pour Redis.
Si ton CMS ou ton plugin utilise un socket Unix plutôt qu’un port TCP, assure‑toi que le chemin du socket correspond bien à celui configuré dans le service, faute de quoi la connexion échouera silencieusement.
Checklist ultime avant de cocher « Activer »
- Service Memcached ou Redis installé sur le serveur (pas uniquement l’extension PHP).
- Service actif au démarrage, confirmé par
systemctl statuset absence d’erreurs. - Port 11211 ou 6379 ouvert localement et en écoute, vérifié avec
ssounetstat. - Connexion testable via
telnet,ncouredis-cliavec une réponse attendue (par exemple « PONG » pour Redis). - Host et port exactement identiques entre la configuration de ton application et celle du service.
- Firewall ou règles de sécurité qui n’empêchent pas la connexion locale ou distante selon ton architecture.
- Extension PHP correspondante installée et déclarée dans
php.ini, visible viaphp -m.
Gains de performance réels avec un cache bien configuré
Un object cache fonctionnel peut réduire le temps de chargement des pages de 60 à 80 % sur des sites WordPress ou Prestashop dépendants de nombreuses requêtes SQL.
Dans la pratique, cela se traduit souvent par un TTFB divisé par 3 à 5, un CPU serveur réduit de 30 à 60 % et des scores PageSpeed mobile qui gagnent plusieurs dizaines de points.
Exemples concrets : Prestashop et WordPress
Sur Prestashop, combiner le cache Smarty avec un cache objet basé sur Memcached ou Redis permet de réduire drastiquement le temps de génération des fiches produits et des pages de catégorie.
Sur WordPress, l’object cache diminue le nombre de requêtes sur la table wp_options et accélère fortement WooCommerce, les pages de blog ou les sites de membres à fort trafic.
Memcached ou Redis : que choisir ?
Memcached se distingue par sa simplicité, sa très faible consommation de ressources et ses excellentes performances pour un cache clé‑valeur classique sans persistance.
Redis propose des fonctionnalités avancées (persistence, structures de données, scripts) et convient mieux aux boutiques ou applications complexes où perdre le cache après un redémarrage serait problématique.
Bonnes pratiques pour exploiter pleinement ton cache
Avant de miser sur Memcached ou Redis, il reste essentiel de nettoyer le socle de ton site : thèmes lourds, plugins inutiles et requêtes SQL mal optimisées ne doivent pas être masqués uniquement par le cache.
Une fois le socle sain, surveille régulièrement le taux de hit du cache, l’évolution des temps de réponse et l’impact des mises à jour pour ajuster la configuration au fil du temps.
Morale de l’histoire : ne te fie pas à la case cochée
Cocher « Activer Memcache » ou « Activer Redis » revient à dire que tu veux un coffre‑fort, mais sans installer ni fermer la porte, aucune donnée n’est réellement protégée ou optimisée.
En prenant le temps de mettre en place le service, de le démarrer, de tester la connexion puis d’aligner la configuration côté application, tu transformes ce simple bouton en véritable levier de web‑performance.
Prêt à booster tes sites ?
Vérifie dès maintenant si ton Memcached ou ton Redis tourne vraiment, corrige la configuration si nécessaire, puis mesure l’impact sur ton TTFB, tes scores PageSpeed et la charge de ton serveur.
Besoin d’un accompagnement pour auditer ou optimiser ton cache ? Contacte ton agence web ou un consultant spécialisé en performance WordPress / Prestashop pour aller encore plus loin.







