Maison >développement back-end >tutoriel php >Explication détaillée des étapes pour utiliser Memcached pour mettre en cache les données dans le framework ThinkPHP

Explication détaillée des étapes pour utiliser Memcached pour mettre en cache les données dans le framework ThinkPHP

php中世界最好的语言
php中世界最好的语言original
2018-05-17 11:57:131584parcourir

Cette fois, je vais vous apporter une explication détaillée des étapes d'utilisation de Memcached pour mettre en cache les données dans le framework ThinkPHP, et des notes sur l'utilisation de Memcached pour mettre en cache des données dans le framework ThinkPHP. Quels sont les enjeux Ci-dessous, jetons un coup d'œil.

ThinkPHP utilise des fichiers pour mettre en cache les données par défaut et prend en charge d'autres méthodes de mise en cache telles que Memcache. Il existe deux extensions PHP : Memcache et Memcached ont des instructions officielles, parlant principalement de Memcached.

Par rapport à PHP Memcache, php Memcached est une extension de libmemcached basée sur le C natif. Elle est plus complète et il est recommandé de la remplacer par php memcached.

Le pilote Memcached est intégré depuis la version 3.2.2 (

ThinkPHP/Library/Think/Cache/Driver/Memcached.class.php), mais son utilisation n'est pas expliquée dans le document En visualisant le code source Configuré et testé avec succès.

Il y a un bug qui n'a pas encore été corrigé, c'est-à-dire que le délai d'expiration est de 0. En théorie, il devrait être mis en cache de manière permanente, mais sans traitement dans le pilote, il expirera immédiatement. est modifié comme suit

 public function set($name, $value, $expire = null) {
  N('cache_write',1);
  if(is_null($expire)) {
   $expire = $this->options['expire'];
  }
  $name = $this->options['prefix'].$name;
  if (empty($expire))
   $time = 0;
  else
   $time = time() + $expire;
  if($this->handler->set($name, $value, $time)) {
   if($this->options['length']>0) {
    // 记录缓存队列
    $this->queue($name);
   }
   return true;
  }
  return false;
 }
Ajouter

dans le

fichier de configuration
//缓存配置
 'DATA_CACHE_TYPE' => 'Memcached',
 'MEMCACHED_SERVER' => array(
  array('127.0.0.1', 11211, 0)
 ),
config.php Le driver s'appelle :

Vous pouvez ajouter plusieurs serveurs de cache
Memcached::addServers(array)

Il existe également un élément de configuration appelé MEMCACHED_LIB, qui s'appelle :

Je pense que vous maîtrisez la méthode après avoir lu le cas dans cet article. Pour des informations plus intéressantes, veuillez prêter attention aux autres articles connexes sur le site Web PHP chinois !
Memcached::setOptions(array)

Lecture recommandée :

Explication détaillée de l'utilisation du mode statut PHP


Explication détaillée des étapes d'obtention dynamique paramètres de fonction en PHP

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn