Maison > développement back-end > tutoriel php > Comment utiliser Memcached pour mettre en cache les données dans le framework ThinkPHP

Comment utiliser Memcached pour mettre en cache les données dans le framework ThinkPHP

不言
Libérer: 2023-03-25 11:26:01
original
3565 Les gens l'ont consulté

Cet article présente principalement la méthode d'utilisation de Memcached pour mettre en cache les données dans le framework ThinkPHP, et analyse les compétences opérationnelles liées à la configuration et à l'utilisation du cache Memcached dans le framework thinkPHP. Les amis dans le besoin peuvent s'y référer

<.>Cet article décrit les exemples Comment utiliser Memcached pour mettre en cache des données dans le framework ThinkPHP. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :

ThinkPHP utilise des fichiers pour mettre les données en cache 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. 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(&#39;cache_write&#39;,1);
  if(is_null($expire)) {
   $expire = $this->options[&#39;expire&#39;];
  }
  $name = $this->options[&#39;prefix&#39;].$name;
  if (empty($expire))
   $time = 0;
  else
   $time = time() + $expire;
  if($this->handler->set($name, $value, $time)) {
   if($this->options[&#39;length&#39;]>0) {
    // 记录缓存队列
    $this->queue($name);
   }
   return true;
  }
  return false;
 }
Copier après la connexion

Ajouter

//缓存配置
 &#39;DATA_CACHE_TYPE&#39; => &#39;Memcached&#39;,
 &#39;MEMCACHED_SERVER&#39; => array(
  array(&#39;127.0.0.1&#39;, 11211, 0)
 ),
Copier après la connexion

dans la configuration fichier config.php. Le pilote s'appelle :

Memcached::addServers(array)
Copier après la connexion

Vous pouvez ajouter plusieurs serveurs de cache

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

Memcached::setOptions(array)
Copier après la connexion

Pour des options spécifiques, veuillez vous référer au manuel PHP en chinois

Recommandations associées :

Formulaires dans le framework ThinkPhp Explication détaillée de la vérification et de la vérification ajax


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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal