Memcache是什么?
Memcache是一個自由和開放源代碼、高性能、分配的內(nèi)存對象緩存系統(tǒng)。用于加速動態(tài)web應(yīng)用程序,減輕數(shù)據(jù)庫負(fù)載。
它可以應(yīng)對任意多個連接,使用非阻塞的網(wǎng)絡(luò)IO。由于它的工作機(jī)制是在內(nèi)存中開辟一塊空間,然后建立一個HashTable,Memcached自管理這 些HashTable。
Memcached又是什么?
Memcached是Memcache系統(tǒng)的主程序文件,以守護(hù)程序方式運(yùn)行于一個或多個服務(wù)器中,隨時接受客 戶端的連接操作,使用共享內(nèi)存存取數(shù)據(jù)。
那PHP中的Memcache是什么?php中的所講的memcache是用于連接Memecached的php支持?jǐn)U展之一(可用phpinfo查看),類似mbstring,eAccelerator。
簡單的說
Memcache是總的緩存系統(tǒng)項(xiàng)目名稱,容易和PHP中的Memcache混淆。
我們常提到Memcache其實(shí)是PHP中的Memcache,即PHP的Memcached擴(kuò)展支持。
我們常提到Memcached是服務(wù)端主程序文件,服務(wù)端安裝程序。
為了讓你的程序飛起來,必須安裝memcached服務(wù)端程序和PHP的Memcached擴(kuò)展,所以如果您要使用Memcache來緩存系統(tǒng),memcache和memcached兩樣我們都需要安裝。
安裝memcache
# cd /usr/local/src
# wget http://pecl.php.net/get/memcache-2.2.5.tgz
# gzip -d memcache-2.2.5.tgz
# tar xvf memcache-2.2.5.tar
# cd memcache-2.2.5
以下幾句,是以php所在目錄為/usr/local/php為例,如果您的php有變化,請自行替換幾句中/usr/local/php的部分
# /usr/local/php/bin/phpize
# ./configure --enable-memcache --with-php-config=/usr/local/php/bin/php-config --with-zlib-dir
# make && make install
將memcache加入php擴(kuò)展
# vi /etc/php.ini(/etc/php.ini地址為我的php.ini位置,如果你不知道你的php.ini在哪里,可以用# find / -name php.ini進(jìn)行查找,或者傳個探針phpinfo,找到Configuration File (php.ini) Path)中php.ini的位置.
末尾加入
按鍵盤上的 i 開始編輯
CTRL+F翻頁拉到最下面在[Zend]之前加入
extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/"
extension=memcache.so
按Esc鍵,再輸入
:wq
保存退出
重啟你的web服務(wù)器,比如apache
/etc/init.d/httpd restart
下面刷新下PHP探針,看下是不是有這個了,有的話就是裝好了
memcache
Version 2.2.5memcache
Version 2.2.5
下面安裝memcached
裝memcached首先需要安裝安裝libevent
如果是centos可以yum安裝
# yum install libevent-devel
如果不支持yum的系統(tǒng),可以這樣裝libevent
# cd /usr/local/src
# wget http://www.monkey.org/~provos/libevent-1.4.12-stable.tar.gz
# tar vxf libevent-1.4.12-stable.tar.gz
# cd libevent-1.4.12
# ./configure --prefix=/usr/local/libevent
# make && make install
接續(xù)安裝memcached
# cd /usr/local/src
# wget http://cloud.github.com/downloads/saberma/saberma.github.com/memcached-1.4.4.tar.gz
# tar vxf memcached-1.4.4.tar.gz
# cd memcached-1.4.4
# ./configure --prefix=/usr/local/memcached
# make && make install
安裝完后啟動memcached并分配32m內(nèi)存(32為使用內(nèi)存數(shù),可按自身情況修改)
/usr/local/memcached/bin/memcached -d -m 32 -l 127.0.0.1 -p 11211 -u root
將memcached加入啟動項(xiàng)
# vi /etc/rc.d/rc.local
按鍵盤上的 i 開始編輯
在最后加入
/usr/local/memcached/bin/memcached -d -m 32 -l 127.0.0.1 -p 11211 -u root
按Esc鍵,再輸入
:wq
保存退出
如果需要,可以reboot一下,不過不用reboot應(yīng)該已經(jīng)生效~
加速效果測試
用沒有什么負(fù)載的Discuz X1做個測試,未啟用時
GMT+8, 2010-9-12 09:08, Processed in 0.038893 second(s), 2 queries.
緩存啟用后的效果,不過總體感覺VPS上效果不如用eAccelerato緩存加入效果那么明顯
GMT+8, 2010-9-12 09:08, Processed in 0.008383 second(s), 2 queries, Memcache On.
大功告成,打完收工!~~
新聞熱點(diǎn)
疑難解答
圖片精選