秋叶飘飘花飞落,剑舞随影。

清风徐徐发轻扬,面若冰。

擎自首,冲霄汉,如箭。

剑指南天,不会归,非金瞻。


Memcached的编译安装


一、安装libevent


memcached依赖于libevent API,因此要事先安装之,项目主页:http://libevent.org/,读者可自行选择需要的版本下载。本文采用的是目前最新版本的源码包libevent-2.0.21-stable.tar.gz。安装过程:


# tar xf libevent-2.0.21-stable.tar.gz
# cd libevent-2.0.21
# ./configure --prefix=/usr/local/libevent
# make && make install
# echo "/usr/local/libevent/lib" > /etc/ld.so.conf.d/libevent.conf
# ldconfig


二、安装配置memcached


1、安装memcached


# tar xf memcached-1.4.15.tar.gz
# cd memcached-1.4.15
# ./configure --prefix=/usr/local/memcached --with-libevent=/usr/local/libevent
# make && make install

2memcached SysVstartup脚本代码如下所示,将其建立为/etc/init.d/memcached文件


#!/bin/bash
#
# Init file for memcached
#
# chkconfig: - 86 14
# description: Distributed memory caching daemon
#
# processname: memcached
# config: /etc/sysconfig/memcached
. /etc/rc.d/init.d/functions
## Default variables
PORT="11211"
USER="nobody"
MAXCONN="1024"
CACHESIZE="64"
OPTIONS=""
RETVAL=0
prog="/usr/local/memcached/bin/memcached"
desc="Distributed memory caching"
lockfile="/var/lock/subsys/memcached"
start() {
        echo -n $"Starting $desc (memcached): "
        daemon $prog -d -p $PORT -u $USER -c $MAXCONN -m $CACHESIZE
        RETVAL=$?
        [ $RETVAL -eq 0 ] && success && touch $lockfile || failure
        echo
        return $RETVAL
}
stop() {
        echo -n $"Shutting down $desc (memcached): "
        killproc $prog
        RETVAL=$?
        [ $RETVAL -eq 0 ] && success && rm -f $lockfile || failure
        echo
        return $RETVAL
}
restart() {
        stop
        start
}
reload() {
        echo -n $"Reloading $desc ($prog): "
        killproc $prog -HUP
        RETVAL=$?
        [ $RETVAL -eq 0 ] && success || failure
        echo
        return $RETVAL
}
case "$1" in
  start)
        start
        ;;
  stop)
        stop
        ;;
  restart)
        restart
        ;;
  condrestart)
        [ -e $lockfile ] && restart
        RETVAL=$?
        ;;
  reload)
        reload
        ;;
  status)
        status $prog
        RETVAL=$?
        ;;
   *)
        echo $"Usage: $0 {start|stop|restart|condrestart|status}"
        RETVAL=1
esac
exit $RETVAL

3使用如下命令配置memcached成为系统服务:



# chmod +x /etc/init.d/memcached
# chkconfig --add memcached
# service memcached start


三、安装Memcache----------相当于是把phpmemcached连接起来的驱动程序


安装PHPmemcache扩展


# tar xf memcache-2.2.5.tgz
# cd memcache-2.2.5
/usr/local/php/bin/phpize
# ./configure --with-php-config=/usr/local/php/bin/php-config --enable-memcache
# make && make install

上述安装完后会有类似以下的提示:



Installing shared extensions:     /usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/
# vim /etc/php.d/memcache.ini
extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/memcache.so


# vim /etc/php.ini
extension=/usr/local/php/lib/php/extensions/no-debug-zts-20100525/memcache.so
[Memcache]
memcache.allow_failover = 1
memcache.max_failover_attempts=20
memcache.chunk_size =8192
memcache.default_port = 11211

注意,本人多次尝试,将这段代码写入/etc/php.d/memcache.ini中,浏览器中都无法正常显示

下图是正常显示结果

memcached---续上篇

四,配置安装客户端memadmin


下载安装包memadmin-master.zip


# unzip memadmin-master.zip
# cd memadmin-master
# mv * /www/website/--站点目录
重启服务
# service httpd24 restart
# service php-fpm restart

在浏览器中打开网页


memcached---续上篇



memcached---续上篇

memcached---续上篇




补充知识


memcached---续上篇

Memcache缓存的是key-value键值,而xcache缓存的是fastcgi解析的opcode代码。