Maison >développement back-end >tutoriel php >php effectue une opération de cache Memcache

php effectue une opération de cache Memcache

巴扎黑
巴扎黑original
2017-08-06 16:05:531237parcourir

La bibliothèque de fonctions Memcache est en PECL (PHP Extension Community Library). Sa fonction principale est de créer une zone de stockage temporaire pour les données mémoire de grande capacité. Sinon, il n'est pas recommandé de le faire. utilisez-le. Cet article vous présentera la méthode de base d'utilisation de PHP pour faire fonctionner le cache Memcache. Les amis dans le besoin peuvent s'y référer.

Avant-propos

J'ai récemment rencontré Memcache au travail. Tout le monde devrait savoir que Memcache est une mémoire distribuée efficace. Le système de cache d'objets peut prendre en charge le placement. diverses données PHP (tableaux, objets, types de données de base) dans la mémoire qu'il gère. Cet article vous donnera une introduction détaillée aux méthodes de base du fonctionnement du cache Memcache de PHP. Sans plus tarder, jetons un coup d'œil à l'introduction détaillée.

1. Utilisation du code


<?php 
 
 //连接 
 $mem = new Memcache; 
 $mem->connect("127.0.0.1", 11211) or die ("Could not connect"); 
 //显示版本 
 $version = $mem->getVersion(); 
 echo "Memcached Server version: ".$version."<br>"; 
 //保存数据 
 $mem->set(&#39;key1&#39;, &#39;This is first value&#39;, 0, 60); 
 $val = $mem->get(&#39;key1&#39;); 
 echo "Get key1 value: " . $val ."<br>"; 
 //替换数据 
 $mem->replace(&#39;key1&#39;, &#39;This is replace value&#39;, 0, 60); 
 $val = $mem->get(&#39;key1&#39;); 
 echo "Get key1 value: " . $val . "<br>"; 
 //保存数组 
 $arr = array(&#39;aaa&#39;, &#39;bbb&#39;, &#39;ccc&#39;, &#39;ddd&#39;); 
 $mem->set(&#39;key2&#39;, $arr, 0, 60); 
 $val2 = $mem->get(&#39;key2&#39;); 
 echo "Get key2 value: "; 
 print_r($val2); 
 echo "<br>"; 
 
 //对数组进行序列化,在网络传输的时候,为了保证,数据类型的不丢失,先序列化,再发生. 
 //$arr1=serialize($arr); 
 $arr2=json_encode($arr1); 
 print_r($arr2); 
 
 //删除数据 
 $mem->delete(&#39;key1&#39;); 
 $val = $mem->get(&#39;key1&#39;); 
 echo "Get key1 value: " . $val . "<br>"; 
 //清除所有数据 
 $mem->flush(); 
 $val2 = $mem->get(&#39;key2&#39;); 
 echo "Get key2 value: "; 
 print_r($val2); 
 echo "<br>"; 
 //关闭连接 
 $mem->close(); 
 
?>

2. , Explication détaillée de la bibliothèque de fonctions :

  • Memcache::add - Ajoutez une valeur, si elle existe déjà, retournez false

  • Memcache::addServer - Ajouter une adresse de serveur à utiliser

  • Memcache::close - Fermer un objet Memcache

  • Memcache::connect - Créer un objet Memcache

  • memcache_debug - Contrôler la fonctionnalité de débogage ! [4 F8 C2 e, X

  • Memcache::decrement ! - Soustraire la valeur d'une clé enregistrée

  • Memcache::delete - Supprimer une valeur de clé

  • Memcache::flush - Effacer toutes les données mises en cache

  • Memcache::get - Obtenir une valeur clé

  • Memcache::getExtendedStats - Obtenir tous les processus du pool de processus Exécution des statistiques du système

  • Memcache::getServerStatus - Récupère les paramètres du serveur en cours d'exécution

  • Memcache::getStats - Renvoie certaines statistiques d'exécution du serveur

  • Memcache::getVersion - Renvoie les informations de version du Memcache en cours d'exécution

  • Memcache::increment - La valeur dans une clé enregistrée Effectuer une opération d'addition

  • Memcache::pconnect - Créer un objet de connexion persistante Memcache

  • Memcache::replace - Remplacer une clé existante Effectuer une opération d'écrasement

  • Memcache::set - Ajouter une valeur, si elle existe déjà, écraser

  • Memcache::setCompressThreshold - Right Compresser les données supérieures à une certaine taille

  • Memcache::setServerParams - Modifier les paramètres du serveur au moment de l'exécution

3. Utilisation distribuée :

La bibliothèque de fonctions Memcache est en PECL (PHP Extension Community Library). Sa fonction principale est de créer une zone de stockage temporaire pour les données mémoire de grande capacité. L'effet est très évident lorsqu'il est distribué

.

<?php 
 
 //1.实例化一个Memcache对象 
 $mem=new Memcache(); 
 
 //2. 连接到指定的memcache中 
 // $mem->connect("127.0.0.1",11211); 
 
 //如果我们网站,需要多个memached缓存系统,如下使用分布式 
 $mem->addServer("192.168.1.100",11211); 
 $mem->addServer("192.168.1.200",11211); 
 $mem->addServer("192.168.1.222",11211); 
 
 //创建多个memcache服务使用addServer 会根据负载均衡算法,自动放入每个服务器 
 $mem->add("name","zs",0,100); 
 
?>

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