G-framework
一款优秀的国产PHP MVC轻量级开发框架
我的博客
CentOS安装memcached及配置php的memcached扩展
memcached是基于libevent的,安装memcached之前要先安装libevent

第一步:下载libevent和memcached最新版
#cd /usr/local/src/
#wget http://cloud.github.com/downloads/libevent/libevent/libevent-2.0.21-stable.tar.gz
#wget http://www.memcached.org/files/memcached-1.4.17.tar.gz

第二步:安装libevent
# tar -zxvf libevent-2.0.21-stable.tar.gz
# cd libevent-2.0.21-stable
# ./configure --prefix=/usr/local/libevent/
# make && make install

第三步:安装memcached
# tar -zxvf memcached-1.4.17.tar.gz 
# cd memcached-1.4.17
# ./configure --prefix=/usr/local/memcached --with-libevent=/usr/local/libevent/
# make && make install
# ln -s /usr/local/libevent/lib/libevent-2.0.so.5  /lib/libevent-2.0.so.5 

第四步:启动 memcached
启动参数说明:
-d 选项是启动一个守护进程,
-m 是分配给Memcache使用的内存数量,单位是MB,默认64MB 
-M return error on memory exhausted (rather than removing items)
-u 是运行Memcache的用户,如果当前为root 的话,需要使用此参数指定用户。
-l 是监听的服务器IP地址,默认为所有网卡。
-p 是设置Memcache的TCP监听的端口,最好是1024以上的端口
-c 选项是最大运行的并发连接数,默认是1024
-P 是设置保存Memcache的pid文件 
-f chunk size growth factor (default: 1.25) 
-I Override the size of each slab page. Adjusts max item size(1.4.2版本新增)
 
也可以启动多个守护进程,但是端口不能重复 
/usr/local/memcached/bin/memcached -d -m 128 -u root -l 127.0.0.1 -p 11211 -c 200 -P /tmp/memcached.pid

第五步:设置开机自动启动
# vi /etc/rc.d/rc.local
然后在最后增加一句
/usr/local/memcached/bin/memcached -d -m 128 -u root -l 127.0.0.1 -p 11211 -c 200 -P /tmp/memcached.pid
 
停止memcached 服务  kill -9 `cat /tmp/memcached.pid`

第六步:配置php的memcached扩展
php有两个版本的memcached客户端,分别是memcached和memcache,下载地址分别是:
http://pecl.php.net/get/memcached
http://pecl.php.net/get/memcache
注意到了吧,两者只差一个d,前者是php官方新开发的基于libmemcached的客户端,后者是原生实现的以php类库的形式存在。我们分别说下安装memcached和memcache客户端。
安装memcached首先要安装libmemcached
# cd /usr/local/src/
# https://launchpadlibrarian.net/165454254/libmemcached-1.0.18.tar.gz
# tar -zxvf libmemcached-1.0.18.tar.gz
# cd libmemcached-1.0.18
# ./configure --prefix=/usr/local/libmemcached/ --with-libmemcached-dir=/usr/local/libmemcached/
# make
# make install

然后安装memcached客户端
# wget http://pecl.php.net/get/memcached-2.1.0.tgz
# tar -zxvf memcached-2.1.0.tgz
# cd memcached-2.1.0
# /usr/local/php/bin/phpize 
# ./configure --with-php-config=/usr/local/php/bin/php-config --with-libmemcached-dir=/usr/local/libmemcached/
# make
# make install
提示类似Installing shared extensions:     /usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/”便安装好了。
然后修改php.ini文件
# vi /usr/local/php/etc/php.ini 
增加一行:
extension=memcached.so
重启php-fpm进程
# /usr/local/php/sbin/init.d.php-fpm restart
之后用phpinfo()查看,便可以看到memcached扩展了。

安装memcache客户端
# cd /usr/local/src/
# wget http://pecl.php.net/get/memcache-3.0.8.tgz
# tar -zxvf memcache-3.0.8.tgz
# cd memcache-3.0.8
# /usr/local/php/bin/phpize 
# ./configure --with-php-config=/usr/local/php/bin/php-config
# make
# make install
提示类似Installing shared extensions:     /usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/”便安装好了。
我们进入php扩展目录
# cd /usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/
# ls
能看到有memcached.so  memcache.so 两个文件
然后修改php.ini文件
# vi /usr/local/php/etc/php.ini 
增加一行:
extension=memcache.so
重启php-fpm进程
# /usr/local/php/sbin/init.d.php-fpm restart
之后用phpinfo()查看,便可以看到memcache扩展了。这样,php环境同时安装了memcached和memcache两个客户端。

上一篇:CentOS下搭建SVN环境
下一篇:CentOS下配置Mongodb环境及安装php-mongo扩展