• LNMP环境搭建配置memcache


     原始出处  http://iceeggplant.blog.51cto.com/1446843/819576

    memcached是高性能的,分布式的内存对象缓存系统,在动态应用中减少数据库负载,提升访问速度。php关于memcached的扩展方式有两种:一种memcache,一种memcached。

    为什么要装php关于memcached扩展
          memcached的1.2.4及以上增加了CAS(Check and Set)协议,对于同一key的多进程的并发处理问题。这种情况其实和数据库很像,如果同时有几个进程对同一个表的同一数据进行更新的话,那会不会打架 呢。数据库里面可以锁定整张表,也可以锁定表里面一行的功能,其实memcached加入的CAS与此差不多。
           php的扩展memcache,不支持cas,所以我们要装memcached扩展,memcached扩展是基于libmemcached,所以要先安装libmemcached。

    1.memcache服务端安装:

    1)下载包libevent-1.4.14b-stable.tar.gz和memcached-1.4.5.ta.gz

    2) libevent安装:如有则无须安装

    1
    2
    3
    4
    tar zvxf libevent-1.4.14b-stable.tar.gz 
    cd libevent-1.4.14b-stable 
    ./configure --prefix=/usr   //默认路径安装,默认目录/usr/local/lib
    make && make install

    3) memcached服务端安装

    1
    2
    3
    4
    tar zxvf memcached-1.4.5.tar.gz
    cd memcached-1.4.5
    ./configure --prefix=/usr/local/memcache/ --with-libevent=/usr
    make & make install

    启动:/usr/local/bin/memcached  -d  -m 512  -p  11211 -u root

    -d启动守护进程,-m设置memcache使用的内存大小,-p 端口默认11211  -u以root用户启动进程。

    如果想memcache服务开启启动,需要将上面启动指令添加到在/etc/rc.d/rc.local中最后一行。

    2.php中memcache扩展安装

    1)下载包 memcache-2.2.6.tgz

    2)memcache-2.2.6.tgz安装

    1
    2
    3
    4
    5
    6
    tar zxvf memcache-2.2.5.tgz
    cd memcache-2.2.5/
    /usr/local/webserver/php/bin/phpize
    ./configure --with-php-config=/usr/local/webserver/php/bin/php-config
    make
    make install

    2)memcache-2.2.6安装完成后,会弹出一句话,我的是/usr/local/webserver/php/lib/php /extensions/no-debug-non-zts-20060613/。在php.ini中查找extension_dir ,将其值修改为/usr/local/webserver/php/lib/php/extensions/no-debug-non-zts- 20060613/。同时添加一句话extension = "memcache.so"。

    至此,php中可以使用memcache扩展,如果使用memcached扩展,需要安装libmemcached,同时在php.ini中配置下。

    1)下载包是libmemcached-1.0.18.tar.gz

    2)libmemcached-1.0.18的安装

    1
    2
    3
    4
    tar zvxf libmemcached-1.0.18.tar.gz
    cd libmemcached-1.0.18
    ./configure --prefix=/usr/local/webserver/libmemcached --with-memcached
    make && make install

    3)修改php的配置文件php.ini

    加上模块extension=memcached.so   看看extension_dir指定的模块路径下是否有memcached.so文件.extension_dir一般是/usr/lib/php /modules/.....  如果没有看下是否在lib64下,ln -s做下软链接.如:

    ln -s /usr/lib64/php/modules  /usr/lib/php/modules

  • 相关阅读:
    【尺取】HDU Problem Killer
    【尺取或dp】codeforces C. An impassioned circulation of affection
    【搜索】codeforces C. The Tag Game
    【数学】codeforces B. The Golden Age
    【dfs+理解题意+构造】【待重做】codeforces E. Ice cream coloring
    【贪心】codeforces D. Minimum number of steps
    【数学】codeforces A. Success Rate
    【二分+交互】codeforces B. Glad to see you!
    【组合 数学】codeforces C. Do you want a date?
    JavaScript实现快速排序
  • 原文地址:https://www.cnblogs.com/bluealine/p/5583783.html
Copyright © 2020-2023  润新知