亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

Memcache的部署和使用

2019-11-14 15:24:30
字體:
來源:轉載
供稿:網友

一、memcache簡介

Memcache是danga.com的一個項目,最早是為 LiveJournal 服務的,目前全世界不少人使用這個緩存項目來構建自己大負載的網站,來分擔數據庫的壓力。

Memcache官方網站:http://memcached.org/

 

二、memcache的安裝

1、  下載源文件(目前最新穩定版本是memcached-1.4.5.tar.gz)

wget http://memcached.googlecode.com/files/memcached-1.4.5.tar.gz

由于Memcache用到了libevent這個庫用于Socket的處理,所以還需要安裝libevent,

Libevent的官網為http://www.monkey.org/~PRovos/libevent/,最新穩定版本為:1.4.14b

wget http://www.monkey.org/~provos/libevent-1.4.14b-stable.tar.gz

2、  安裝memcache

1)、安裝libevent

# tar xzvf libevent-1.4.14b-stable.tar.gz

# cd libevent-1.4.14b-stable

# ./configure --prefix=/usr

# make && make install

# cd ..

# ls -al /usr/lib | grep libevent (查看是否安裝成功)

2)、安裝memcache

# tar xzvf memcached-1.4.5.tar.gz

# cd memcached-1.4.5

# ./configure --with-libevent=/usr

# make && make install

# ls -al /usr/local/bin/mem*   (查看是否生成memcached可執行程序文件)

#備注:如果是64位的系統可能會報錯,因為默認的庫文件只會安裝到/usr/lib下面

3、  啟動memcache

# 通過/usr/local/bin/memcached –h查看命令選項幫助

[root@Centos2 memcached-1.4.5]# /usr/local/bin/memcached -h

memcached 1.4.5

-p       TCP port number to listen on (default: 11211)

-U       UDP port number to listen on (default: 11211, 0 is off)

-s      UNIX socket path to listen on (disables network support)

-a      access mask for UNIX socket, in octal (default: 0700)

-l   interface to listen on (default: INADDR_ANY, all addresses)

-d            run as a daemon

-r            maximize core file limit

-u assume identity of (only when run as root)

-m       max memory to use for items in megabytes (default: 64 MB)

-M            return error on memory exhausted (rather than removing items)

-c       max simultaneous connections (default: 1024)

 

#啟動命令如下

# /usr/local/bin/memcached -d -m 10  -u root -l 172.28.5.2 -p 12000 -c 1024 –P /tmp/memcached.pid

####相關選項說明

-d   表示啟動一個守護進程

-m 是分配給memcached使用的內存

-u   運行memcached的用戶

-l     是memcached監聽的ip

-p    是memcached監聽的端口

-c    memcache運行的最大并發連接數

-P    是設置memcache的pid文件

 

三、php的memcache擴展的安裝

1、  windows平臺memcache擴展的安裝

下載相應版本的php_memcache.dll文件,然后將該文件放到D:/AppServ/php5/ext目錄下(路徑根據php安裝的位置不同請自行設置),然后更改相應的php.ini的設置,創建的php文件,訪問這個文件看memcache模塊是否起作用。

2、  linux平臺memcache擴展的安裝

wget http://blog.s135.com/soft/linux/nginx_php/memcache/memcache-2.2.5.tgz

tar zxvf memcache-2.2.5.tgz
cd memcache-2.2.5/
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make
make install
cd ../

修改php.ini文件

查找/usr/local/php/etc/php.ini中的 extension_dir = "./"修改為extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/"

并在此行后增加一行,然后保存:

extension = "memcache.so"

創建php文件aaa.php,內容如下:

 

Phpinfo();

?>

保存,然后訪問看是否能顯示memcache模塊的信息!

 

四、Memcache的使用

//使用部分是轉載的,原文地址:http://blog.csdn.net/heiyeshuwu

[ 接口介紹 ]
服務器端和客戶端都安裝配置好了,現在我們就來測試以下我們的成果。Memcache客戶端包含兩組接口,一組是面向過程的接口,一組是面向對象的接口,具體可以參考PHP手冊 “LXXV. Memcache Functions” 這章。我們為了簡單方便,就使用面向對象的方式,也便于維護和編寫代碼。Memcache面向對象的常用接口包括:

Memcache::connect -- 打開一個到Memcache的連接
Memcache::pconnect -- 打開一個到Memcache的長連接
Memcache::close -- 關閉一個Memcache的連接
Memcache::set -- 保存數據到Memcache服務器上
Memcache::get -- 提取一個保存在Memcache服務器上的數據
Memcache::replace -- 替換一個已經存在Memcache服務器上的項目(功能類似Memcache::set)
Memcache::delete -- 從Memcache服務器上刪除一個保存的項目
Memcache::flush -- 刷新所有Memcache服務器上保存的項目(類似于刪除所有的保存的項目)
Memcache::getStats -- 獲取當前Memcache服務器運行的狀態

[測試代碼 ]
現在我們開始一段測試代碼:

//連接
$mem = new Memcache;
$mem->connect("192.168.0.200", 12000);

//保存數據
$mem->set('key1', 'This is first value', 0, 60);
$val = $mem->get('key1');
echo "Get key1 value: " . $val ."
";

//替換數據
$mem->replace('key1', 'This is replace value', 0, 60);
$val = $mem->get('key1');
echo "Get key1 value: " . $val . "
";

//保存數組
$arr = array('aaa', 'bbb', 'ccc', 'ddd');
$mem->set('key2', $arr, 0, 60);
$val2 = $mem->get('key2');
echo "Get key2 value: ";
print_r($val2);
echo "
";

//刪除數據
$mem->delete('key1');
$val = $mem->get('key1');
echo "Get key1 value: " . $val . "
";

//清除所有數據
$mem->flush();
$val2 = $mem->get('key2');
echo "Get key2 value: ";
print_r($val2);
echo "
";

//關閉連接
$mem->close();

//添加多臺memcached服務器

$b = new Memcache();
$b->addServer("10.55.38.18",11271);
$b->addServer("10.55.38.18",11272);
$b->addServer("10.55.38.18",11273);

 

 

$arrHosts=array('10.10.10.11'=>'11211','10.10.10.12'=>'11211');

$mc = new Memcache();
echo serialize($mc)."/n";
foreach($arrHostsas $host=>$port) {
echo 'start'.$host."/n";
$mc->connect($host,$port);

echoserialize($mc)."/n";
$stats = $mc->getStats();
echo $stats['pid']."/n";

}


?>


如果正常的話,瀏覽器將輸出:
Get key1 value:This is first value
Get key1 value: This is replace value
Get key2 value: Array ( [0] => aaa [1] => bbb [2] => ccc [3] => ddd)
Get key1 value:
Get key2 value:


基本說明我們的Memcache安裝成功,我們再來分析以下上面的這段程序。


[程序分析 ]

初始化一個Memcache的對象:
$mem = new Memcache;

連接到我們的Memcache服務器端,第一個參數是服務器的IP地址,也可以是主機名,第二個參數是Memcache的開放的端口:
$mem->connect("192.168.0.200", 12000);

保存一個數據到Memcache服務器上,第一個參數是數據的key,用來定位一個數據,第二個參數是需要保存的數據內容,這里是一個字符串,第三個參數是一個標記,一般設置為0或者MEMCACHE_COMPRESSED就行了,第四個參數是數據的有效期,就是說數據在這個時間內是有效的,如果過去這個時間,那么會被Memcache服務器端清除掉這個數據,單位是秒,如果設置為0,則是永遠有效,我們這里設置了60,就是一分鐘有效時間:
$mem->set('key1', 'This is first value', 0, 60);

從Memcache服務器端獲取一條數據,它只有一個參數,就是需要獲取數據的key,我們這里是上一步設置的key1,現在獲取這個數據后輸出輸出:
$val = $mem->get('key1');
echo "Get key1value: " .$val;

現在是使用replace方法來替換掉上面key1的值,replace方法的參數跟set是一樣的,不過第一個參數key1是必須是要替換數據內容的key,最后輸出了:
$mem->replace('key1', 'This is replace value', 0, 60);
$val = $mem->get('key1');
echo "Get key1value: " . $val;

同樣的,Memcache也是可以保存數組的,下面是在Memcache上面保存了一個數組,然后獲取回來并輸出
$arr = array('aaa', 'bbb', 'ccc', 'ddd');
$mem->set('key2', $arr, 0, 60);
$val2 = $mem->get('key2');
print_r($val2);

現在刪除一個數據,使用delte接口,參數就是一個key,然后就能夠把Memcache服務器這個key的數據刪除,最后輸出的時候沒有結果
$mem->delete('key1');
$val = $mem->get('key1');
echo "Get key1value: " . $val . "
";

最后我們把所有的保存在Memcache服務器上的數據都清除,會發現數據都沒有了,最后輸出key2的數據為空,最后關閉連接
$mem->flush();
$val2 = $mem->get('key2');
echo "Get key2value: ";
print_r($val2);
echo "
";


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日韩欧美国产骚| 亚洲精品久久久久久久久久久久| 91在线|亚洲| 日韩国产一区三区| 欧美巨猛xxxx猛交黑人97人| 国产精品欧美日韩一区二区| 亚洲嫩模很污视频| www.美女亚洲精品| 欧美激情视频网站| 欧美日韩在线视频观看| 亚洲专区国产精品| 国产精品欧美日韩一区二区| 高清欧美性猛交xxxx黑人猛交| 日韩成人在线视频网站| 好吊成人免视频| 欧美激情视频网| 狠狠做深爱婷婷久久综合一区| 国产精品福利久久久| 综合久久五月天| 亚洲国产成人在线视频| 国产精品电影网| 久久人人爽亚洲精品天堂| 日韩大陆毛片av| 成人有码视频在线播放| 欧美成年人在线观看| 色悠久久久久综合先锋影音下载| 国产精品日韩专区| 全球成人中文在线| 中文字幕日韩有码| 国产在线精品成人一区二区三区| 91夜夜未满十八勿入爽爽影院| 亚洲精品一区在线观看香蕉| 欧美日韩色婷婷| 国产欧美日韩高清| 77777亚洲午夜久久多人| 91麻豆桃色免费看| 97精品国产91久久久久久| 日韩美女在线播放| 久久午夜a级毛片| 欧美激情啊啊啊| 国产一区二区美女视频| 精品久久久久国产| 久久伊人精品一区二区三区| 久久躁狠狠躁夜夜爽| 色黄久久久久久| 亚洲成人xxx| 久久这里有精品视频| 伊人男人综合视频网| 国产在线拍揄自揄视频不卡99| 九九精品在线播放| 欧美一区二区大胆人体摄影专业网站| 精品亚洲夜色av98在线观看| 国产精品成人品| 国产亚洲精品高潮| 成人免费在线视频网址| 精品中文字幕在线2019| 91精品国产高清久久久久久91| 国产精品日韩欧美大师| 精品国产乱码久久久久酒店| 成人在线视频网| 欧美日韩成人在线播放| 国产精品综合久久久| 97精品国产97久久久久久免费| 欧美视频在线视频| 国产精品久久久久久久久| 亚洲老头同性xxxxx| 欧美疯狂性受xxxxx另类| 不卡毛片在线看| 日韩精品在线免费观看视频| 日韩av三级在线观看| 亚洲欧美日韩成人| 91久久国产精品91久久性色| 欧美一区在线直播| 色综合伊人色综合网| 亚洲欧洲偷拍精品| 欧美日韩性生活视频| 538国产精品一区二区在线| 欧美激情欧美激情在线五月| 久久久噜噜噜久噜久久| 中文字幕日韩av电影| 国产精品尤物福利片在线观看| 亚洲天堂男人天堂| 中文字幕不卡av| 久久综合免费视频| 人妖精品videosex性欧美| 国产精品网站大全| 成人黄色在线播放| 久久久亚洲欧洲日产国码aⅴ| 91精品视频在线免费观看| 日韩av电影在线播放| 亚洲精品中文字| 欧美激情一区二区三区在线视频观看| 国内伊人久久久久久网站视频| 亚洲成年人影院在线| 国产精品2018| 欧美老少做受xxxx高潮| 欧美一区二区大胆人体摄影专业网站| 日本久久亚洲电影| 亚洲天天在线日亚洲洲精| 亚洲精品视频中文字幕| 国产精品99导航| 欧美夜福利tv在线| 久久精品亚洲精品| 主播福利视频一区| 九九精品在线视频| 青青青国产精品一区二区| 亚洲欧洲日韩国产| 国产精品99导航| 永久免费看mv网站入口亚洲| 国产精品视频不卡| 日韩欧美中文字幕在线播放| 亚洲色图17p| 国产精品免费视频久久久| 精品久久久一区二区| 日韩一区二区福利| 国产日韩中文在线| 久久久久久久久中文字幕| 色在人av网站天堂精品| 91精品免费看| 一二美女精品欧洲| 国产精品国产自产拍高清av水多| 欧美日韩亚洲成人| www.久久久久| 亚洲天堂av综合网| 亚洲免费电影一区| 日韩精品视频在线观看免费| 第一福利永久视频精品| 亚洲第一精品夜夜躁人人爽| 精品亚洲一区二区三区在线观看| 91在线观看免费高清| 亚洲伊人成综合成人网| 国产亚洲视频在线观看| 欧美疯狂xxxx大交乱88av| 亚洲日本欧美日韩高观看| 色www亚洲国产张柏芝| 57pao国产精品一区| 亚洲视频精品在线| 欧美性xxxx极品hd满灌| 欧美在线日韩在线| 中文字幕免费精品一区| 国产成人自拍视频在线观看| 久久免费高清视频| 456国产精品| 亚洲国产精品成人va在线观看| 亚洲精品国产精品乱码不99按摩| 国产精品丝袜一区二区三区| 欧美日韩激情小视频| 亚洲欧美福利视频| 欧美激情久久久| 亚洲精品在线观看www| 国产偷亚洲偷欧美偷精品| 成人免费大片黄在线播放| 国产不卡视频在线| 欧美激情一区二区久久久| 一色桃子一区二区| 国产精品va在线| 国产成人久久久| 亚洲欧洲在线看| 欧美综合一区第一页| 7m第一福利500精品视频| 亚洲一区二区三区成人在线视频精品| 国产日韩精品综合网站| 911国产网站尤物在线观看| 国语自产偷拍精品视频偷|