centos安装memcache

这两天搞定了nginx+php+mysql+svn,最后一个就是memcache了。准备这几项都搞定了以后,着手开始重写博客。

因为,妈蛋看了半年前自己用CI写的博客的代码,都在想“我次奥,我当时怎么会写出这么垃圾的代码!!!”

memcache分为服务器端和PHP扩展,所以我们是需要分两块进行安装的。

    1. 下载相关组件。
      这里是下载服务器端用的组件,memcached和libevent,libevent是用于做Socket处理,其他的我也不清楚具体怎么。
      memcached:http://www.danga.com/memcached/dist/memcached-1.2.2.tar.gz
      libevent:http://www.monkey.org/~provos/libevent-1.3.tar.gz
      附上libevent官网:http://www.monkey.org/~provos/libevent/

      这里有我在百度盘留存的一份可供下载“libevent+memcached下载

      mkdir /opt/memcached
      cd /opt/memcached/
      wget http://www.danga.com/memcached/dist/memcached-1.2.2.tar.gz
      
      mkdir /opt/libevent
      cd /opt/libevent
      wget http://www.monkey.org/~provos/libevent-1.3.tar.gz
      
    2. 安装libevent
      tar zxvf libevent-1.3.tar.gz
      cd libevent-1.3
      ./configure –prefix=/usr
      make
      make install
      
    3. 测试libevent安装是否成功
      ls -al /usr/lib | grep libevent

      反馈如下

      libevent安装测试
    4. 安装服务器端memcached
      cd /opt/memcached
      tar zxvf memcached-1.2.2.tar.gz
      cd memcached-1.2.2
      ./configure –with-libevent=/usr
      make
      make install
      
      

      如果中间出现报错,请仔细检查错误信息,按照错误信息来配置或者增加相应的库或者路径。
      反正我是一路正常的走下来,没有发现有报错的情况
      安装完成后会把memcached放到 /usr/local/bin/memcached

    5. 测试是否安装成功
      ls -al /usr/local/bin/mem*
      

      反馈如下

      memcached安装反馈

  1. 启动memcached
    /usr/local/bin/memcached -d -m 10 -u root -l 127.0.0.1 -p 12000 -c 256 -P /opt/memcached-1.2.2/memcached.pid
    

    以下内容灰常重要,请看懂!

    -d选项是启动一个守护进程,
    -m是分配给Memcache使用的内存数量,单位是MB,我这里是10MB,
    -u是运行Memcache的用户,我这里是root,
    -l是监听的服务器IP地址,如果有多个地址的话,我我是在本地所以直接把IP设置127.0.0.1,
    -p是设置Memcache监听的端口,我这里设置了12000,最好是1024以上的端口,
    -c选项是最大运行的并发连接数,默认是1024,我这里设置了256,按照你服务器的负载量来设定,
    -P是设置保存Memcache的pid文件,我这里是保存在 /opt/memcached-1.2.2/memcached.pid,

  2. 下面安装php扩展
    /usr/local/php5/bin/pecl install memcache  #会自动安装好memcache扩展
    

    安装完成后注意看底下会有提示,要我们在php.ini里面开启扩展。

    vim /usr/local/php5/etc/php.ini
    #大概880行左右找到一大串extension=php_xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    #加上下面这句
    extension=memcache.so
    

    到这里基本上就好了。进phpinfo看一下是否运行有memcache吧。

  3. 测试
            //phpinfo();
            $memcache = new Memcache;
            $memcache->connect("127.0.0.1",12000);
            $value = $memcache->get('key');
            //var_dump($value);
            if($value)
            {
                    echo "key:".$value;
    
                    //echo $memcache;
            }else
            {
                    echo "Can`t find value 'key' And we will set key = 'memcache is so easy'";
                    $memcache->add('key','memcache is so easy');
            }
            //$memcache->delete('key');
            $memcache->close();
    
    

发表评论

电子邮件地址不会被公开。 必填项已用*标注

This site uses Akismet to reduce spam. Learn how your comment data is processed.