08-12
Cache des données avec MemCache

## Le démon: apt-get install memcached ## L'extension PHP 5 apt-get install php5-memcacheQuelques configurations sont nécessaires pour lancer le démon sous debian, il faut éditer le fichier :
nano /etc/default/memcached # Editer la ligne pour autoriser le démarrage: ENABLE_MEMCACHED=yes # Démarrez ensuite le démon: /etc/init.d/memcached startPlace maintenant à PHP, vous trouverez plus d'informations sur le book dédié sur le site de PHP.net. Le but de cet article va être de cacher une requête SQL de type COUNT(*).
// Déclaration de l'objet $memcache = new Memcache; // Ajout du serveur Memcache: $memcache->addServer('localhost', 11211); // Récupération de la variable $num = $memcache->get('nom_de_ma_clee_unique'); // On test si la variable était, ou non, en cache if ($num === false){ // La variable n'est pas présente, on doit faire nos calculs $query = mysql_query('SELECT COUNT(*) AS c FROM comments WHERE post_id = 10'); $num = mysql_fetch_assoc($query); // Mise en cache du résultat qui nous intéresse: // On cache $num, pendant une durée de 30 secondes. $memcache->set('nom_de_ma_clee_unique', $num, MEMCACHE_COMPRESSED, 30); } // Affichage des résultats var_dump($num);En espérant que ce petit billet vous aidera à mettre en cache quelques unes de vos plus lourdes requêtes.
Votre commentaire
Aucun commentaire pour ce billet.