• memcached的安装以及php两个扩展软件安装(memcache、memcached)


    百度云安装包:http://pan.baidu.com/s/1pKZeDwn  k3ap

    1、安装memcached

      Memcached是基于libevent的事件处理,所以它的安装依赖libevent。因此我们首先需要将libevent安装好,再进行安装memcached。

      Libevent官网:http://libevent.org/

      Memcached官网:http://www.danga.com/memcached

      安装libevent:

    #tar –zxvf libevent-1.4.9-stable.tar.gz
    
    #cd libevent-1.4.9-stable
    
    #./configue --prefix=/usr
    
    #make&make install

    安装memcached:

    #tar –zxvf memcached-1.4.25.tar.gz
    
    #cd memcached-1.4.25
    
    #./configue --with-libevent=/usr --prefix=/usr/local
    
    #make&make install

    试运行:

    # /usr/local/bin/memcached -u 用户名
    
    #ps –A|grep memcached       (查看是否有memcached进程)

    具体启动参数以及指令可以参考:http://www.cnblogs.com/phpstudy2015-6/p/6653199.html

    2、安装PHP中的memcache扩展

      官网下载:http://pecl.php.net/package/memcache

      安装:

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

      配置:

      (生成的.so扩展文件)

    # ls -l /usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/memcache.so
    
    # vi /usr/local/php/lib/php.ini

      添加extension = memcache.so

      保存,重启apache

      测试:

      1、建立一个test.php文件,能够生成memcache对象则表示安装扩展成功

    <?php
        $m=new memcache();
        Var_dump($m);
    ?>

       2、查看phpinfo();

    3、安装libmemcached

      官网下载:https://launchpad.net/libmemcached/+download

      简述软件:

      libmemcached是memcached的C客户端,它具有的优点是低内存,线程安全等特点。

      其中libmemcached版本1.0.9往上需要使用跟高级的gcc编译安装(它依赖更高级版本gcc的库)

      假若gcc版本过低则:

      yum install gcc44 gcc44-c++ libstdc++44-devel

      安装过程:

    # tar zxvf libmemcached-1.0.18.tar.gz
    
    # cd libmemcached-1.0.18
    
    #./configure --prefix=/usr/local/libmemcached --with-memcached
    
    #make  &&  make install

      【一般来说,gcc版本ok,安装就能ok】

      安装要注意的问题:

      1、最好能够设置安装目录,--prefix

      【以下两个来自网上,我安装时没有遇到这两个问题】

      2、安装过程中不要忘了,–with-memcached,不然会提示你

    checking for memcached… no
    configure: error: “could not find memcached binary”

      3、你的memcached是不是1.2.4以上的,如果不是会提示你

    clients/ms_thread.o: In function `ms_setup_thread’:
    /home/zhangy/libmemcached-0.42/clients/ms_thread.c:225: undefined reference to `__sync_fetch_and_add_4′
    clients/ms_thread.o:/home/zhangy/libmemcached-0.42/clients/ms_thread.c:196: more undefined references to `__sync_fetch_and_add_4′ follow
    collect2: ld returned 1 exit status
    make[2]: *** [clients/memslap] Error 1
    make[2]: Leaving directory `/home/zhangy/libmemcached-0.42′

    解决办法是–disable-64bit CFLAGS=”-O3 -march=i686″,如果不用这个64位的long型数据,我想php扩展memcached,memcache也就没什么区别了,装memcached也就没什么意思了。

    4、安装PHP中的memcached扩展

      memcached的1.2.4及以上增加了CAS(Check and Set)协议,对于同一key的多进行程的并发处理问题。php的扩展memcache,不支持cas,所以我们要装memcached扩展,memcached扩展是基于libmemcached,所以要先安装libmemcached。

      php中的memcache扩展与memcached扩展相对比,memcache扩展已经停止了维护且功能相对较少;而memcached扩展一直有维护更新,功能强大。

      官网下载:http://pecl.php.net/package/memcached

    【安装memcached扩展注意】

      如果libmemcached被安装在一个非标准路径,使用--with-libmemcached-dir=DIR 来指定路径,DIR就是libmemcached安装时的prefix参数。这个路径需要包含文件include/libmemcached/memcached.h

      如果要支持压缩就需要zlib。对于非标准安装的zlib库,使用--with-zlib-dir=DIR 来指定zlib安装路径,DIR就是zib安装时的prefix参数

    session处理器的支持默认是开启的。如果要关闭它,使用选项--disable-memcached-session

    # tar -zxvf memcached-2.2.0.tgz
    
    # cd memcached-2.2.0
    
    # /usr/local/php/bin/phpize
    
    #./configure --enable-memcached --with-php-config=/usr/local/php/bin/php-config --with-libmemcached-dir=/usr/local/libmemcached --with-memcached --with-zlib-dir=/usr/local/zlib --enable-memcached-igbinary --disable-memcahed-sasl
    # make && make install

      【注意】上面的编译时:

      “--with-zlib-dir=/usr/local/zlib”:表示在缓存数据时用到压缩函数,如果不需要压缩的话那就不需要安装了。安装方法如下

      “--enable-memcached-igbinary”:igbinary是一个序列化工具,它将php的数据结构存储为紧密的二进制形式,在时间和空间上都有所改进,可以提高性能。要想带上这个参数那么就需要安装它 。安装方法如下

    查看:

    5、安装zlib与igbinary

      官方下载:http://www.zlib.net (zlib)

           http://pecl.php.net/package/igbinary  (igbinary)

    【安装zlib】

    # tar -xvzf zlib-1.2.5.tar.gz
    
    # cd zlib-1.2.5.tar.gz
    
    # ./configure --prefix=/usr/local/zlib
    
    # make && make install

    【安装igbinary扩展】

    igbinary是php中的一个扩展

    # tar –zxvf igbinary-1.1.1.tgz
    
    # cd igbinary-1.1.1
    
    # /usr/lcoal/php/bin/phpize
    
    # ./configure
    
    # make && make install

    (以上是自己的一些见解,若有不足或者错误的地方请各位指出)

    作者:那一叶随风

     声明:本博客文章为原创,只代表本人在工作学习中某一时间内总结的观点或结论。转载时请在文章页面明显位置给出原文链接

  • 相关阅读:
    Java集合(二)-Set集合
    Java集合类
    Java构造器和初始化块
    学习OpenStack-Neutron网络服务
    Error response from daemon: Get https://index.docker.io/v1/search?q=tomcat&n=25: net/http: TLS handshake timeout
    学习OpenStack-Nova计算服务
    学习OpenStack-Glance组件部署
    报错:rsync同步报错
    报错:创建nginx镜像时出现报错
    报错:重启Docker报错如何解决
  • 原文地址:https://www.cnblogs.com/phpstudy2015-6/p/6670103.html
Copyright © 2020-2023  润新知