Home  >  Article  >  Backend Development  >  php performs memcache cache operation

php performs memcache cache operation

巴扎黑
巴扎黑Original
2017-08-06 16:05:531204browse

The Memcache function library is in PECL (PHP Extension Community Library). Its main function is to build a temporary storage area for large-capacity memory data. It is very obvious when it is distributed. Otherwise, it is not recommended to use it. This article will introduce to you the basic method of using PHP to operate memcache cache. Friends in need can refer to it.

Preface

I recently encountered memcache at work. Everyone should know that memcache is an efficient distributed memory. The object caching system can support placing various PHP data (arrays, objects, basic data types) in the memory it manages. This article will give you a detailed introduction to the basic methods of PHP operating memcache cache. Without further ado, Let’s take a look at the detailed introduction.

1. Code usage


<?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. Function Library details:

  • ##Memcache::add - Add a value, if it already exists, return false

  • Memcache::addServer - Add a server address for use

  • Memcache::close - Close a Memcache object

  • Memcache: :connect - Create a Memcache object

  • memcache_debug - Control the debugging function! [4 F8 C2 e, X

  • Memcache::decrement - Save the Perform subtraction operation on the value in a certain key

  • Memcache::delete - Delete a key value

  • Memcache::flush - Clear all Cached data

  • Memcache::get - Get a key value

  • Memcache::getExtendedStats - Get the running system of all processes in the process pool Statistics

  • Memcache::getServerStatus - Get the parameters of the running server

  • ##Memcache::getStats - Return some running statistics of the server
  • Memcache::getVersion - Returns the version information of the running Memcache
  • Memcache::increment - Adds the value in a saved key
  • Memcache::pconnect - Create a Memcache persistent connection object
  • Memcache::replace - Overwrite an existing key Operation
  • Memcache::set - Adds a value, overwriting it if it already exists
  • ##Memcache::setCompressThreshold - For values ​​greater than a certain Compress large and small data
  • Memcache::setServerParams - Modify server parameters at runtime
3. Distribution Formula to use:

Memcache function library is in PECL (PHP Extension Community Library). Its main function is to build a temporary storage area for large-capacity memory data. In distributed The effect is very obvious

<?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); 
 
?>

The above is the detailed content of php performs memcache cache operation. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn