memcached安裝 php使用手記

2021-04-15 05:38:59 字數 4967 閱讀 5263

提要:1。安裝

memcached

伺服器端

2。安裝

php對

memcache

支援模組

3。使用

memcache

情況,計數器、資料壓縮

4。memcache

記憶體的更新清理

(delete flush)

5。記憶體超量的測試

(set)

1。安裝memcached伺服器端

memcached

安裝說明

(北南南北的站):

注意的是:如果你安裝過程中出現錯誤,請看看是不是有模組沒裝:

autoconf

zlib (

壓縮資料用

)2。安裝phpmemcache支援模組

php老家:

難道,4.3.3

都裝上了嗎?好像沒有吧,用

4.4.4

好像都要另外裝的

)3。使用memcache情況,計數器、資料壓縮

使用情況一:統計

<?php

//訪問統計

$memcache

= new

memcache;

$memcache

->connect(』localhost』, 11211) or 

die("could not connect"); if(

$s=$memcache

->get(』a』)) 

else

$memcache

->set(』a』,1);

echo

』訪問結果為:

』.$s

;?>

其實我們可以用

increment

方法代替上面的做法

<?php

$memcache

= new

memcache;

$memcache

->connect(』localhost』, 11211) or 

die("could not connect");if(

$s=$memcache

->increment(』a』,1)) 

else

$memcache

->set(』a』,1);

?>

資料壓縮 :

<?php

$memcache

= new

memcache;

$memcache

->connect(』localhost』, 11211) or 

die("could not connect");

$test

=(str_repeat

(』jetwong』,100000));

$memcache

->set(』b』,(

$test

));?>

使用壓縮:

<?php

$memcache

= new

memcache;

$memcache

->connect(』localhost』, 11211) or 

die("could not connect");

$test

=(str_repeat

(』jetwong』,100000));

$memcache

->set(』b』,(

$test

),memcache_compressed);

?>

使用情況說明:

前台比較

目前記憶體

bytes

總共讀取

bytes_read

總共寫入

bytes_written

壓縮前700085

700081

416壓縮後

1131

1125 13

可能看到壓縮後明顯占用記憶體少了不少

4。memcache記憶體的更新清理(delete flush)

<?php

$memcache

= new

memcache;

$memcache

->connect(』localhost』, 11211) or 

die("could not connect");

/*設定值

*/$status

= $memcache

->getstats();

echo

』設定前記憶體使用情況

』.$status

[』bytes』].』

』;echo

』設定後

』;for($i

=0;$i

<9;

$i++) 

/*檢視設定的值

*/$status

= $memcache

->getstats();

echo

』delete

前記憶體使用情況

』.$status

[』bytes』].』

』;echo』開始

delete』;

for(

$i=0;

$i<9;

$i++) 

/*檢視

flush

使用的情況

*/$status

= $memcache

->getstats();

echo』使用

flush

前記憶體使用情況

』.$status

[』bytes』].』

』;echo』使用

flush

情況:』;

for(

$i=0;

$i<9;

$i++) 

$memcache

->

flush

();echo

』flush

之後:』;

for(

$i=0;

$i<9;

$i++) 

$status

= $memcache

->getstats();

echo

』flush

後記憶體使用情況

』.$status

[』bytes』].』

』;?>

5。記憶體超量的測試(set)

我們把記憶體設為2m

./memcached -d -m 2 -p 11211 -u root

<?php

$memcache

= new

memcache;

$memcache

->connect(』localhost』, 11211) or 

die("could not connect");

//600k

左右$test1

= str_repeat

(』jetlee』,100000);

//600k

左右$test2

= str_repeat

(』jetlee』,100000);

//600k

左右$test3

= str_repeat

(』李連杰

』,200000);

//600k

左右$test4

= str_repeat

(』連傑李

執行結果:

test1->設定成功

記憶體:600042

test2->設定成功

記憶體:1200084

test3->設定失敗

test4->設定成功

記憶體:1200084

test5->設定失敗

test6->設定失敗

剛好印證我們的計算,不過20萬的repeat為什麼會失敗,不是太了解,,,,,,

總結:示例:

<?

//設定篇if(

$data

= $memcache

->get(』k』,

$v)) 

else

?>

-----------over-----------

liunx安裝 memcached 及php拓展

一 檢查libevent 首先檢查系統中是否安裝了libevent shell rpm qa grep libevent 如果安裝了則檢視libevent的安裝路徑,後續安裝時需要用到 shell rpm ql libevent 如果沒有安裝,則先安裝libevent 安裝libevent shel...

Memcached學習 安裝 使用 PHP

libevent memcached依賴於libevent庫,因此需要先安裝 libevent cd libevent 2.1.12 stable configure prefix usr local libevent make make install memcached cd memcached...

編譯安裝 PHP 的 Memcached 擴充套件

安裝 libmemcached 類庫cd usr local src wgettar zxvf libmemcached 1.0.18.tar.gz 進入原始碼目錄 cd libmemcached 1.0.18 配置指定安裝目錄 configure prefix usr local libmemca...