Memcache函數庫是在PECL(PHP Extension Community Library)中,
主要作用是搭建大容量的內存數據的臨時存放區域,
在分布式的時候作用體現的非常明顯,否則不建議使用。以下為幾個例子,都很簡單。
<?php
$memcache = new Memcache;
$memcache->connect('localhost', 11211) or die ("Could
not connect");
$version = $memcache->getVersion();
echo "Server's version: ".$version." ";
?>
<?php
$memcache = new Memcache; $memcache->connect('localhost', 11211) or die ("Could not connect");
print_r($memcache->getStats());
/** * Array * ( * [pid] => 8052 * [uptime] => 9205 * [time] => 1205898428 * [version] => 1.2.5 * [pointer_size] => 32 * [rusage_user] => 0.008000 * [rusage_system] => 0.000000 * [curr_items] => 1 * [total_items] => 17 * [bytes] => 57 * [curr_connections] => 2 * [total_connections] => 15 * [connection_structures] => 3 * [cmd_get] => 9 * [cmd_set] => 23 * [get_hits] => 5 * [get_misses] => 4 * [evictions] => 0 * [bytes_read] => 671 * [bytes_written] => 850 * [limit_maxbytes] => 10485760 * [threads] => 1 * ) */
?>
<?php
$memcache = new Memcache;
$memcache->connect('localhost', 11211) or die ("Could not connect");
$memcache->set( 'name', 'leo', 0, 30);
if(!$memcache->add( 'name', 'susan', 0, 30)){
echo 'susan is exist';
};
$memcache->replace( 'name', 'lion', 0, 300);
echo $memcache->get( 'name');
$memcache->delete( 'name', 5);
?>
<?php
function _callback_memcache_failure($host, $port) {
print "memcache '$host:$port' failed";
}
$memcache = new Memcache;
$memcache->addServer('192.168.1.116', 11211);
$memcache->setServerParams('192.168.1.116', 11211, 1, 15, true,'_callback_memcache_failure');
echo $memcache->getServerStatus('192.168.1.116', 11211);
?>
<?php
$memcache = new Memcache;
$memcache->connect('localhost', 11211);
$memcache->set('test_item', 8);
$memcache->increment('test_item', 4);
echo $memcache->decrement('test_item', 7);
// 顯示 5
?>
Memcach方法說明:
01.Memcache::add — 添加一個值,如果已經存在,則返回false
02.Memcache::addServer — 添加一個可供使用的服務器地址
03.Memcache::close — 關閉一個Memcache對象
04.Memcache::connect — 創建一個Memcache對象
05.memcache_debug — 控制調試功能
06.Memcache::decrement — 對保存的某個key中的值進行減法操作
07.Memcache::delete — 刪除一個key值
08.Memcache::flush — 清除所有緩存的數據
09.Memcache::get — 獲取一個key值
10.Memcache::getExtendedStats — 獲取進程池中所有進程的運行系統統計
11.Memcache::getServerStatus — 獲取運行服務器的參數
12.Memcache::getStats — 返回服務器的一些運行統計信息
13.Memcache::getVersion — 返回運行的Memcache的版本信息
14.Memcache::increment — 對保存的某個key中的值進行加法操作
15.Memcache::pconnect — 創建一個Memcache的持久連接對象
16.Memcache::replace — R對一個已有的key進行覆寫操作
17.Memcache::set — 添加一個值,如果已經存在,則覆寫
18.Memcache::setCompressThreshold — 對大于某一大小的數據進行壓縮
19.Memcache::setServerParams — 在運行時修改服務器的參數
主要作用是搭建大容量的內存數據的臨時存放區域,
在分布式的時候作用體現的非常明顯,否則不建議使用。以下為幾個例子,都很簡單。
<?php
$memcache = new Memcache;
$memcache->connect('localhost', 11211) or die ("Could
not connect");
$version = $memcache->getVersion();
echo "Server's version: ".$version." ";
?>
<?php
$memcache = new Memcache; $memcache->connect('localhost', 11211) or die ("Could not connect");
print_r($memcache->getStats());
/** * Array * ( * [pid] => 8052 * [uptime] => 9205 * [time] => 1205898428 * [version] => 1.2.5 * [pointer_size] => 32 * [rusage_user] => 0.008000 * [rusage_system] => 0.000000 * [curr_items] => 1 * [total_items] => 17 * [bytes] => 57 * [curr_connections] => 2 * [total_connections] => 15 * [connection_structures] => 3 * [cmd_get] => 9 * [cmd_set] => 23 * [get_hits] => 5 * [get_misses] => 4 * [evictions] => 0 * [bytes_read] => 671 * [bytes_written] => 850 * [limit_maxbytes] => 10485760 * [threads] => 1 * ) */
?>
<?php
$memcache = new Memcache;
$memcache->connect('localhost', 11211) or die ("Could not connect");
$memcache->set( 'name', 'leo', 0, 30);
if(!$memcache->add( 'name', 'susan', 0, 30)){
echo 'susan is exist';
};
$memcache->replace( 'name', 'lion', 0, 300);
echo $memcache->get( 'name');
$memcache->delete( 'name', 5);
?>
<?php
function _callback_memcache_failure($host, $port) {
print "memcache '$host:$port' failed";
}
$memcache = new Memcache;
$memcache->addServer('192.168.1.116', 11211);
$memcache->setServerParams('192.168.1.116', 11211, 1, 15, true,'_callback_memcache_failure');
echo $memcache->getServerStatus('192.168.1.116', 11211);
?>
<?php
$memcache = new Memcache;
$memcache->connect('localhost', 11211);
$memcache->set('test_item', 8);
$memcache->increment('test_item', 4);
echo $memcache->decrement('test_item', 7);
// 顯示 5
?>
Memcach方法說明:
01.Memcache::add — 添加一個值,如果已經存在,則返回false
02.Memcache::addServer — 添加一個可供使用的服務器地址
03.Memcache::close — 關閉一個Memcache對象
04.Memcache::connect — 創建一個Memcache對象
05.memcache_debug — 控制調試功能
06.Memcache::decrement — 對保存的某個key中的值進行減法操作
07.Memcache::delete — 刪除一個key值
08.Memcache::flush — 清除所有緩存的數據
09.Memcache::get — 獲取一個key值
10.Memcache::getExtendedStats — 獲取進程池中所有進程的運行系統統計
11.Memcache::getServerStatus — 獲取運行服務器的參數
12.Memcache::getStats — 返回服務器的一些運行統計信息
13.Memcache::getVersion — 返回運行的Memcache的版本信息
14.Memcache::increment — 對保存的某個key中的值進行加法操作
15.Memcache::pconnect — 創建一個Memcache的持久連接對象
16.Memcache::replace — R對一個已有的key進行覆寫操作
17.Memcache::set — 添加一個值,如果已經存在,則覆寫
18.Memcache::setCompressThreshold — 對大于某一大小的數據進行壓縮
19.Memcache::setServerParams — 在運行時修改服務器的參數