1、先下载memcached 和libevent。
libevent 最新的稳定版: wget http://monkey.org/~provos/libevent-1.4.14b-stable.tar.gz
引用网页:http://www.monkey.org/~provos/libevent/
memcached 最新的稳定版:wget http://memcached.googlecode.com/files/memcached-1.4.5.tar.gz
引用网页:http://code.google.com/p/memcached/downloads/list
2、 安装libevent
tar zxvf libevent-1.4.14b-stable.tar.gz
cd libevent-1.4.14b-stable
./configure --prefix=/usr/local/libevent/
make
make install
cd ..
2、安装memcached
tar zxvf memcached-1.4.5.tar.gz
cd memcached-1.4.5
./configure --prefix=/usr/local/memcached --with-libevent=/usr/local/libevent/
make
make install
ln -s /usr/local/libevent/lib/libevent-1.4.so.2 /lib/libevent-1.4.so.2
3、启动 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 64 -u root -l 127.0.0.1 -p 11211 -c 128 -P /tmp/memcached.pid
3、设置开机自动启动
vi /etc/rc.d/rc.local
然后在最后增加一句
/usr/local/memcached/bin/memcached -d -m 64 -u root -l 127.0.0.1 -p 11211 -c 128 -P /tmp/memcached.pid
停止memcached 服务 kill -9 `cat /tmp/memcached.pid`
安装扩展
wget http://pecl.php.net/get/memcache-2.2.5.tgz
cd memcache-2.2.5
/usr/local/php/bin/phpize
./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-2007xxxx/”
添加一行来载入memcache扩展:extension=memcache.so
或者添加一行:
extension= /usr/local/php/lib/php/extensions/no-debug-non-zts-2007xxxx/memcache.so
重启php-fpm kill -USR2 `cat /usr/local/php/var/run/php-fpm.pid`
memcache 使用方法 API
Memcache::add — 添加一个值,如果已经存在,则返回false
Memcache::addServer — 添加一个可供使用的服务器地址
Memcache::close — 关闭一个Memcache对象
Memcache::connect — 创建一个Memcache对象
memcache_debug — 控制调试功能
Memcache::decrement — 对保存的某个key中的值进行减法操作
Memcache::delete — 删除一个key值
Memcache::flush — 清除所有缓存的数据
Memcache::get — 获取一个key值
Memcache::getExtendedStats — 获取进程池中所有进程的运行系统统计
Memcache::getServerStatus — 获取运行服务器的参数
Memcache::getStats — 返回服务器的一些运行统计信息
Memcache::getVersion — 返回运行的Memcache的版本信息
Memcache::increment — 对保存的某个key中的值进行加法操作
Memcache::pconnect — 创建一个Memcache的持久连接对象
Memcache::replace — R对一个已有的key进行覆写操作
Memcache::set — 添加一个值,如果已经存在,则覆写
Memcache::setCompressThreshold — 对大于某一大小的数据进行压缩
Memcache::setServerParams — 在运行时修改服务器的参数