並通過memcached協議與守護進程通訊。但是它並不提供冗餘(例如,複製其hashmap條目);當某個伺服器s停止運行或崩潰了,所有存放在s上的鍵/值對都將丟失。 memcached由danga interactive開發,用於提升livejournal.com訪問速度的。lj每秒動態網頁面訪問量幾千次,使用者700萬。memcached將資料庫負載大幅度降低,更好的分配資源,更快速存取。
memcache常用方法
memcache::add — 添加一個值,如果已經存在,則返回false
memcache::addserver — 添加一個可供使用的伺服器位址
memcache::close — 關閉一個memcache對象
memcache::connect — 建立一個memcache對象
memcache::debug — 控制調試功能
memcache::decrement — 對儲存的某個key中的值進行減法操作
memcache::delete — 刪除一個key值
memcache::flush — 清除所有緩衝的資料
memcache::get — 擷取一個key值
memcache::getextendedstats — 擷取進程池中所有進程的運行系統統計
memcache::getserverstatus — 擷取運行伺服器的參數
memcache::getstats — 返回伺服器的一些運行統計資訊
memcache::getversion — 返回啟動並執行memcache的版本資訊
memcache::increment — 對儲存的某個key中的值進行加法操作
memcache::pconnect — 建立一個memcache的持久連線物件
memcache::replace — r對一個已有的key進行覆寫操作
memcache::set — 添加一個值,如果已經存在,則覆寫
memcache::setcompressthreshold — 對大於某一大小的資料進行壓縮
memcache::setserverparams — 在運行時修改伺服器的參數
memcache方法使用
代碼如下:
代碼如下 |
複製代碼 |
<?php教程 $memcache = new memcache; $memcache->connect('127.0.0.1', 11211) or die("串連失敗"); $memcache->set('name', '張三'); $val = $memcache->get('name'); ?> |
注:set方法的完整版本,set(鍵名,索引值,是否壓縮,保持時間)
代碼如下:
代碼如下 |
複製代碼 |
<?php $memcache = new memcache; $memcache -> connect('127.0.0.1', 11211) or die("串連失敗"); $memcache -> set('name', array('一個','兩個')); $val = $memcache->get('name'); print_r($val); $memcache -> close(); ?> |