本文作者:心月

php中memcached擴展的使用指南

心月IT博客 2019-06-11
摘要:memcache是一套分布式高速緩存系統,分布式是指可以同時在多臺服務器安裝memcache,這樣可以達到一個很好的集群效果;高速是指,memcache的所有數據都是維護在內存中,它的讀取速度比存取硬盤中的速度要快的多。

1、什么是memcache

    memcache是一套分布式高速緩存系統,分布式是指可以同時在多臺服務器安裝memcache,這樣可以達到一個很好的集群效果;高速是指,memcache的所有數據都是維護在內存中,它的讀取速度比存取硬盤中的速度要快的多。


2、memcache的作用

    可以在應用和數據庫當中增加一個緩沖層,在數據庫中讀取的數據,接下來再次讀取時可以直接在memcache中讀取,這樣可以減輕數據庫的壓力。


3、memcache使用場景:

     1、非持久化存儲:對數據存儲要求不高,數據丟失也不會對系統產生影響。

     2、分布是存儲:不適合單機使用,memcache對內存的消耗很大。

     3、Key/Value格式存儲:格式簡單,不支持List、Array數據格式。


memcache和memcached對比:

    memcache 是pecl擴展庫版本

    memcached是libmemcached版本

    Memcache是原生實現的,支持OO和非OO兩套接口并存。而memcached是使用libmemcached,只支持OO接口。

    在實際使用中可以將memcached當成是memcache的升級版本,推薦使用memcached,memcached有比memcache更多的操作,而且速度和穩定性都比memcache好很多


4、memcached服務端安裝

 sudo apt-get install memcached


memcached服務啟動:

/usr/bin/memcached -d -l 127.0.0.1 -p 11211 -m 150 -u nginx

-d:守護進程模式啟動,終端退出后進程移入還可以繼續運行

-l:指定ip地址:127.0.0.1

-p:指定端口號:11211

-m:給memcached分配內存,單位'M':150

-u:用戶名,以哪個的身份登錄memcache:nginx


5、php-memcached擴展安裝

sudo apt install php-memcached


php中使用memcached

memcached常用方法:

$m = new Memcached();
$servers = [
    [127.0.0.1,11211]    //默認端口:11211
];
$m -> addServers($servers);//添加多臺memcache服務器連接
$m -> addServer('127.0.0.1',11211);//連接單臺memcache服務器
$m -> add('var1','value1','3600');//添加一個值,如果已經存在,則返回false,第三個值為過期時間
$m -> set('num',12,0); //添加memcache數據,第三個參數表示數據有效時間,0表示永久有效
$m -> get('num'); //獲取數據
$m -> delete('num'); //刪除數據
$m -> setMulti($data,0);//把多條數據放入數組中,同時添加多條數據,第二個參數是數據的有效時間
$m -> getMulti($keydata;//同時獲取多條數據,出入的數組為多個'key'組成的數組
$m -> deleteMulti($keydata;//同時刪除多條數據
$m -> getResultCode();//獲取上次操作返回的編碼,返回0表示操作成功
$m -> getResultMessage();//獲取上次操作的結果
$m -> flush(); //清除memcached的所有緩存
$m -> increment('num',2); //每執行一次,num的值增加2
$m -> decrement('num',2); //每執行一次,num的值減少2


memcached使用注意事項:

    不要在單機模式中使用memcached;

    不要只使用memcached保存重要數據,一定要把memcached當成緩存用,而不是當成數據存儲;

    定期查看緩存的分布狀況和擊中狀況。


文章版權及轉載聲明:

作者:心月 本文地址:http://www.rawkpk.live/other/278.html發布于 2019-07-01
文章轉載或復制請以超鏈接形式并注明出處心月IT博客

分享到:
贊(

發表評論

快捷輸入:

    評論列表 (有 0 條評論,人圍觀)參與討論