memcache 安裝及使用


memcache時php使用memcached的一個擴展,是一種分布式內存對象緩存系統。用來存儲經常要查詢到的數據,減少對數據庫的訪問,提高整體網站的速度。

簡單提一下memcache與redis區別,memcache和redis都是內存數據庫,redis不僅是K=>V是緩存,還有list,hash等,簡單K=>V存儲用memcache就可以了。

下面是Linux Ubuntu16.04 memcache的安裝及使用

1.因為memcache是php使用memcached的擴展,所以先要安裝memcached(memcache服務端)

sudo apt-get install memcached 

2.安裝完memcached,接下來啟動它

memcached -d -m 128 -p 11111 -u root 

-m 指定使用多少兆的緩存空間;-p 指定要監聽的端口; -u 指定以哪個用戶來運行

3.安裝memcache客戶端

sudo apt-get install php7-memcache 

安裝完客戶端在/etc/php/7.0/apache/php.ini里加入extension=memcache.so(根據自己的具體路徑添加)

php -m沒有的話在/etc/php/7.0/cli/php.ini里也加入extension=memcache.so(根據自己的具體路徑添加)

安裝好之后去測試一下吧

在laravel5.5中引入memcahce,use memcache 

class IndexController extends Controller
{   
    public $mem;
    public function __construct()
    {
        $this->mem = new Memcache;
        $this->mem->connect("127.0.0.1", 11211);
    }
    public function index()
    {
        $userinfo =  array('n'=>'李四','s'=>'男');
        //判斷num是否為true,否則設置起始值為1
        if ($this->mem->get('num')) {
            $this->mem->increment('num', 1);
           
        }else{
            $this->mem->set('num',1);
        }
         //以原子自增為鍵,存儲數據
        $this->mem->set($this->mem->get('num'),serialize($userinfo),false,0);
        
        //定義一個數組,循環取出值
        $list = array();
        for ($i=0; $i <= $this->mem->get('num'); $i++) { 
            if ($this->mem->get($i)) {
                $list[$i] = unserialize($this->mem->get($i));
            }
        }
        var_dump($list);//輸出array(1) { [1]=> array(2) { ["n"]=> string(6) "李四" ["s"]=> string(3) "男" } }
        
    }
}

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM