PHP-MemCache部署
Memcache是一个linux下面高速缓存的程序,可以大大提速动态程序的运行。
需要安装以下三个程序
Memcached memcached-1.2.4.tar.gz
Libevent libevent-1.3e.tar.gz
Php-memcache memcache-2[1].2.3.tar.gz
一、memcached安装
首先是下载memcached了,目前最新版本是1.1.12,直接从官方网站即可下载到memcached-1.2.4.tar.gz。除此之外,memcached用到了libevent,我下载的是libevent-1.3e.tar.gz。
接下来是分别将libevent-1.3e.tar.gz和memcached-1.2.4.tar.gz解开包、编译、安装:
# tar zxvf libevent-1.3e.tar.gz # cd libevent-1.3e# ./configure –prefix=/usr# make# make install 测试libevent是否安装成功# ls -al /usr/lib | grep libevent # tar zxvf memcached-1.2.4.tar.gz# cd memcached-1.2.4# ./configure –prefix=/usr# make# make install 测试memcached是否安装成功# ls -al /usr/bin/mem*
安装完成之后,memcached应该在/usr/bin/memcached
运行memcached守护进程:
/usr/bin/memcached -d -m 128 -l localhost -p 11211 -u root –c 526 –P/tmp/memcached.pid
-d以守护程序(daemon)方式运行memcached;
-m设置memcached可以使用的内存大小,单位为M;
-l设置监听的IP地址,如果是本机的话,通常可以不设置此参数;
-p设置监听的端口,默认为11211,所以也可以不设置此参数;
-u指定用户;
-c选项是最大运行的并发连接数,默认是1024,我这里设置了256,按照你服务器的负载量来设定,
-P是设置保存Memcache的pid文件,我这里是保存在/tmp/memcached.pid,
如果遇到运行memcached时遇到问题,错误提示如下:
/usr/bin/memcached/bin/memcached: error while loading shared libraries: libevent-1.3e.so.1: cannot open shared object file: No such file or directory
便运行以下命令
# LD_DEBUG=libs /usr/bin/memcached –v
然后给libevent-1.3d.so.1建立一个链接:
# ln -s /usr/lib/libevent-1.3e.so.1 /lib64/libevent-1.3e.so.1
二、php-memcache安装
# tar zxvfmemcache-2[1].2.3.tar.gz
# /usr/bin/phpize
# ./configure –enable-memcache –with-zlib-dir
# make
# make install
在php.ini里加入extension=memcache.so
在/etc/rc.local每次启动的时候自动开启memcache
/usr/bin/memcached -d -u apache -m 1024 -c 8192 -l 192.168.20.120 -p 11211 –P /tmp/memcached.pid
/usr/bin/memcached -d -u apache -m 1024 -c 8192 -l 192.168.20.120 -p 11212
关掉memcached的进程
# kill ‘cat /tmp/memcached.pid’
<?php
$mem = new Memcache;
$mem->connect(“127.0.0.1”, 11211)or die (“Could not connect”);
$mem->set(‘key’, ‘This is a test!’, 0, 60);
$val = $mem->get(‘key’);
echo $val;
?>