分享memcache和memcached安裝過程

來源:互聯網
上載者:User
 

Memcache是什嗎?

Memcache是一個自由和開放原始碼、高效能、分配的記憶體對象緩衝系統。用於加速動態web應用程式,減輕資料庫負載。

它可以應對任意多個串連,使用非阻塞的網路IO。由於它的工作機制是在記憶體中開闢一塊空間,然後建立一個HashTable,Memcached自管理這 些HashTable。

Memcached又是什嗎?

Memcached是Memcache系統的主程式檔案,以精靈方式運行於一個或多個伺服器中,隨時接受客 戶端的串連操作,使用共用記憶體存取資料。

那PHP中的Memcache是什嗎?php中的所講的memcache是用於串連Memecached的php支援擴充之一(可用phpinfo查看),類似mbstring,eAccelerator。

簡單的說

Memcache是總的緩衝系統項目名稱,容易和PHP中的Memcache混淆。

我們常提到Memcache其實是PHP中的Memcache,即PHP的Memcached擴充支援。

我們常提到Memcached是服務端主程式檔案,服務端安裝程式。

為了讓你的程式飛起來,必須安裝memcached服務端程式和PHP的Memcached擴充,所以如果您要使用Memcache來緩衝系統,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擴充

# vi /etc/php.ini(/etc/php.ini地址為我的php.ini位置,如果你不知道你的php.ini在哪裡,可以用# find / -name php.ini進行尋找,或者傳個探針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伺服器,比如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的系統,可以這樣裝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

接續安裝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記憶體(32為使用記憶體數,可按自身情況修改)

/usr/local/memcached/bin/memcached -d -m 32 -l 127.0.0.1 -p 11211 -u root

將memcached加入啟動項

# 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應該已經生效~

加速效果測試

用沒有什麼負載的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.

大功告成,打完收工!~~

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.