centos 下memcached 建構以及php memcache安裝
memcached 與memcache的差別,請google
一、建構memcached 伺服器(memcached服務端程式的安裝)
1)memcached用到了libevent這個庫,用于Socket的處理
wget http://www.monkey.org/~provos/libevent-2.0.10-stable.tar.gz
tar xzvf libevent-2.0.10-stable.tar.gz
cd libevent-2.0.10-stable
./configure --prefix=/usr
make && make install
驗證libevent是否正确安裝
ls -al /usr/lib |grep libevent
[root@test /]# ls -al /usr/lib |grep libevent
lrwxrwxrwx 1 root root 21 Feb 28 19:27 libevent-2.0.so.5 -> libevent-2.0.so.5.0.1
-rwxr-xr-x 1 root root 943520 Feb 28 19:27 libevent-2.0.so.5.0.1
-rw-r--r-- 1 root root 1532202 Feb 28 19:27 libevent.a
lrwxrwxrwx 1 root root 26 Feb 28 19:27 libevent_core-2.0.so.5 -> libevent_core-2.0.so.5.0.1
-rwxr-xr-x 1 root root 554374 Feb 28 19:27 libevent_core-2.0.so.5.0.1
-rw-r--r-- 1 root root 928010 Feb 28 19:27 libevent_core.a
-rwxr-xr-x 1 root root 971 Feb 28 19:27 libevent_core.la
lrwxrwxrwx 1 root root 26 Feb 28 19:27 libevent_core.so -> libevent_core-2.0.so.5.0.1
lrwxrwxrwx 1 root root 27 Feb 28 19:27 libevent_extra-2.0.so.5 -> libevent_extra-2.0.so.5.0.1
-rwxr-xr-x 1 root root 410763 Feb 28 19:27 libevent_extra-2.0.so.5.0.1
-rw-r--r-- 1 root root 604266 Feb 28 19:27 libevent_extra.a
-rwxr-xr-x 1 root root 978 Feb 28 19:27 libevent_extra.la
lrwxrwxrwx 1 root root 27 Feb 28 19:27 libevent_extra.so -> libevent_extra-2.0.so.5.0.1
-rwxr-xr-x 1 root root 936 Feb 28 19:27 libevent.la
lrwxrwxrwx 1 root root 29 Feb 28 19:27 libevent_openssl-2.0.so.5 -> libevent_openssl-2.0.so.5.0.1
-rwxr-xr-x 1 root root 85731 Feb 28 19:27 libevent_openssl-2.0.so.5.0.1
-rw-r--r-- 1 root root 120996 Feb 28 19:27 libevent_openssl.a
-rwxr-xr-x 1 root root 1007 Feb 28 19:27 libevent_openssl.la
lrwxrwxrwx 1 root root 29 Feb 28 19:27 libevent_openssl.so -> libevent_openssl-2.0.so.5.0.1
lrwxrwxrwx 1 root root 30 Feb 28 19:27 libevent_pthreads-2.0.so.5 -> libevent_pthreads-2.0.so.5.0.1
-rwxr-xr-x 1 root root 18094 Feb 28 19:27 libevent_pthreads-2.0.so.5.0.1
-rw-r--r-- 1 root root 18678 Feb 28 19:27 libevent_pthreads.a
-rwxr-xr-x 1 root root 999 Feb 28 19:27 libevent_pthreads.la
lrwxrwxrwx 1 root root 30 Feb 28 19:27 libevent_pthreads.so -> libevent_pthreads-2.0.so.5.0.1
lrwxrwxrwx 1 root root 21 Feb 28 19:27 libevent.so -> libevent-2.0.so.5.0.1
2)安裝memcached
wget http://memcached.googlecode.com/files/memcached-1.4.5.tar.gz
tar xzvf memcached-1.4.5.tar.gz
cd memcached-1.4.5
./configure -–with-libevent=/usr
make && make install
安裝完成後,程式會将memcached 自動放到 /usr/local/bin/memcached
[root@test /]# which memcached
/usr/local/bin/memcached
3)安裝PHP的memcache擴充
memcache 的項目下載下傳位址
http://pecl.php.net/package/memcache
安裝code
wget http://pecl.php.net/get/memcache-3.0.5.tgz
tar xf memcache-3.0.5.tgz
cd memcache-3.0.5
./configure --enable-memcache --with-php-config=/usr/local/php/bin/php-config --with-zlib-dir
make && make install
安裝完成後,提示
Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/
配置php.ini檔案
修改extension_dir:
extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/"
添加一行以便加載memcache擴充:extension=memcache.so
extension=memcache.so
驗證PHP中是否成功加載memcache擴充
[root@test /]# php -m
[PHP Modules]
Core
ctype
curl
date
dom
eAccelerator
ereg
fileinfo
filter
hash
iconv
json
libxml
mcrypt
memcache
mysql
mysqli
pcre
PDO
pdo_sqlite
Phar
posix
Reflection
session
SimpleXML
SPL
SQLite
sqlite3
standard
tokenizer
xml
xmlreader
xmlwriter
zlib
[Zend Modules]
17行處,有memcahe,正确加載
後續:memcached基本配置
啟動memcached 服務端程式:
memcached -d -m 10 -u root -l localhost -p 11211 -c 256 -P /tmp/memcached.pid
各個參數的含義:
-d選項是啟動一個守護程序,
-m是配置設定給Memcached使用的記憶體數量,機關是MB,
-u是運作Memcache的使用者,我這裡是root,
-l是監聽的伺服器IP位址,
-p是設定Memcache監聽的端口,最好是1024以上的端口,
-c選項是最大運作的并發連接配接數,預設是1024,按照你伺服器的負載量來設定,
-P是設定儲存Memcache的pid檔案
PS:memcached 常用方法:
kill `cat /tmp/memcached.pid`
擷取運作狀态
echo stats | nc 192.168.0.122 11200
watch “echo stats | nc 192.168.0.122 11200 ” (實時狀态)
快速清空
echo “flush_all” | nc 192.168.0.122 11200
其他工具
http://code.sixapart.com/svn/memcached/trunk/server/scripts/memcached-tool
本文轉自dongfang_09859 51CTO部落格,原文連結:http://blog.51cto.com/hellosa/503371,如需轉載請自行聯系原作者