zoukankan      html  css  js  c++  java
  • Linux下的Memcache安装 和 安装Memcache的PHP扩展

    一、首先安装服务端memcached

    1.下载libevent与memcache软件包。

    下载memcached:

    wget http://memcached.org/latest
    wget http://www.memcached.org/files/memcached-1.5.7.tar.gz

    下载libevent:

    --no-check-certificate 参数表示可以接受 https的连接

    wget https://github.com/libevent/libevent/releases/download/release-2.1.8-stable/libevent-2.1.8-stable.tar.gz --no-check-certificate

    2.解压后安装

    先安装libevent

    tar zxvf libevent-2.1.8-stable.tar.gz

    ./configure -prefix=/usr/local/libevent

    make && make install

    查看是否安装成功

    daokr@DK:/usr/local/libevent/lib$ ls -la |grep libevent

    3.开始安装memcached 同时需要安装中指定libevent的安装位置:

    root@DK:/home/daokr/downfile/memcached-1.5.7#./configure --prefix=/usr/local/memcached --with-libevent=/usr/local/libevent

    root@DK:/home/daokr/downfile/memcached-1.5.7# make && make install

    查看是否安装完成

    先复制一份执行文件到bin目录:

    cp memcached /usr/local/bin/

    然后运行命令启动:

    /usr/local/bin/memcached -d -m 256 -u daokr -l localhost -p 11200 -c 1024 -P /tmp/memcached.pid

     

     telnet localhost 11200 表示成功安装!

    3.memcached 相关参数说明

    相关解释如下:
    -d选项是启动一个守护进程,
    -m是分配给Memcache使用的内存数量,单位是MB,这里是200MB
    -u是运行Memcache的用户,
    -l是监听的服务器IP地址,如果有多个地址的话,我这里指定了服务器的IP地址192.168.1.91
    -p是设置Memcache监听的端口,我这里设置了9023,最好是1024以上的端口
    -c选项是最大运行的并发连接数,默认是1024,这里设置了256
    -P是设置保存Memcache的pid文件,我这里是保存在/tmp/memcached.pid

    二、安装Memcached的PHP扩展

    1)安装memcached 首先 我们呢用到的有两个包来安装要;
    第一个:memcached扩展是基于libmemcached,所以要先安装libmemcached

    
    
    cd /home/daokr/downfile
    wget https://launchpad.net/libmemcached/1.0/1.0.18/+download/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-memcached 
    make 
    make install

    2)接下来安装php-memcached (这个包主要为了生成扩展)

    安装php-fpm的memcached扩展;具体php支持哪几个版本到官方地址:http://pecl.php.net/package/memcached 查看下载

    cd /home/daokr/downfile
    wget http://pecl.php.net/get/memcached-3.0.4.tgz
    tar zxvf memcached-3.0.4.tgz
    cd memcached-3.0.4

     我选择的是memcached-3.0.4 这个版本;因为我们工作开发环境就是这个版本;所以就不换了。

     执行

    /home/php/bin/phpize

    报错如下:
    Cannot find autoconf. Please check your autoconf installation and the $PHP_AUTOCONF environment variable. Then, rerun this script. 根据网上的解决办法是:
    下载安装其他软件:
    # yum install m4
    # yum install autoconf
    或者
    #apt install m4
    #apt install autoconf

    主要下面所有的命令都在memcache-3.0.4/ 该目录下;然后再执行:

    然后继续执行下面命令:

    /home/php/bin/phpize --with-php-config=/home/php/bin/php-config
    ./configure --with-php-config=/home/php/bin/php-config --with-libmemcached-dir=/usr/local/libmemcached --disable-memcached-sasl
     make && make install

    结果如下:

    --with-php-config 指定 php-config,该文件与 phpize 所在目录相同,

    --with-libmemcached-dir 指定 libmemcached 安装目录,就刚才我们 --prefix 那个目录 ,

    --disable-memcached-sasl 说明我们系统不支持sasl.h

    3.上述安装完后会有类似这样的提示:

    如果安装成功,会提示:Installing shared extensions: /home/php/lib/php/extensions/no-debug-zts-20151012/等类信息

    接下来,我们编辑php配置文件php.ini,把 php-memcached 扩展加到配置文件。

    4.把php.ini中的extension_dir = "./" 修改为

    extension_dir = "/home/php/lib/php/extensions/no-debug-non-zts-2007xxxx/"

    在 php.ini 中添加以下内容:

    extension=memcached.so

    5.添加一行来载入memcache扩展:extension=memcache.so

    然后重启:nginx, php-fpm, 还有memcache服务后;测试下面文件;

    Memcache环境测试:
    运行下面的php文件,如果有输出This is a test!,就表示环境搭建成功。开始领略Memcache的魅力把!

    < ?php
    

    $mem=new Memcached(); //实例化Memcached类
    $server= array(
    array('127.0.0.1',11200),
    );
    $isok = $mem->addServers($server);

    $issetm = $mem->set('name','zhangsanddd',15); ////设置缓存值,有效时间3600秒,如果有效时间设置为0,则表示该缓存值永久存在的(系统重启前)
    echo $mem->get('name');

    ?>

    或者直接telnet来查看是否设置成功:

    telnet localhost 11200
    Trying 127.0.0.1...
    Connected to localhost.
    Escape character is '^]'.

    get name
    VALUE name 0 11
    zhangsanddd

     
  • 相关阅读:
    SGU 271 Book Pile (双端队列)
    POJ 3110 Jenny's First Exam (贪心)
    HDU 4310 Hero (贪心)
    ZOJ 2132 The Most Frequent Number (贪心)
    POJ 3388 Japanese Puzzle (二分)
    UVaLive 4628 Jack's socks (贪心)
    POJ 2433 Landscaping (贪心)
    CodeForces 946D Timetable (DP)
    Android Studio教程从入门到精通
    Android Tips – 填坑手册
  • 原文地址:https://www.cnblogs.com/wanglijun/p/8779356.html
Copyright © 2011-2022 走看看