Memcached 擴充常用方法

來源:互聯網
上載者:User

標籤:使用   strong   資料   div   演算法   時間   伺服器   table   

儲存資料

向memcached儲存資料的方法有

  • add
  • replace
  • set

它們的使用方法都相同:

$add = $memcached->add( ‘鍵‘, ‘值‘, ‘期限‘ );$replace = $memcached->replace( ‘鍵‘, ‘值‘, ‘期限‘ );$set = $memcached->set( ‘鍵‘, ‘值‘, ‘期限‘ );

向memcached儲存資料時可以指定期限(秒)。不指定期限時,memcached按照LRU演算法儲存資料。這三個方法的區別如下:

選項 說明
add 僅當儲存空間中不存在鍵相同的資料時才儲存
replace 僅當儲存空間中存在鍵相同的資料時才儲存
set 與add和replace不同,無論何時都儲存
擷取資料

擷取資料可以使用get和get_multi方法。

$val = $memcached->get(‘鍵‘);$val = $memcached->get_multi(‘鍵1‘, ‘鍵2‘, ‘鍵3‘, ‘鍵4‘, ‘鍵5‘);

一次取得多條資料時使用get_multi。get_multi可以非同步地同時取得多個索引值,其速度要比迴圈調用get快數十倍。

刪除資料

刪除資料使用delete方法,不過它有個獨特的功能。

$memcached->delete(‘鍵‘, ‘阻塞時間(秒)‘);

刪除第一個參數指定的鍵的資料。第二個參數指定一個時間值,可以禁止使用同樣的鍵儲存新資料。此功能可以用於防止快取資料的不完整。但是要注意,set函數忽視該阻塞,照常儲存資料

增一和減一操作

可以將memcached上特定的索引值作為計數器使用。

$ret = $memcached->incr(‘鍵‘);$memcached->add(‘鍵‘, 0) unless defined $ret;

增一和減一是原子操作,但未設定初始值時,不會自動賦成0。因此,應當進行錯誤檢查,必要時加入初始化操作。而且,伺服器端也不會對超過232時的行為進行檢查。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.