• MemcacheQ安装及使用


    一.MemcacheQ安装记录

    1.安装libevent
    查看是否已经安装了libevent
    rpm -qa|grep libevent
    如果没有安装
    使用yum安装
    yum install libevent libevent-devel


    2.安装
    BerkeleyDB
    下载db-5.3.21.zip
    解压
    cd db-5.3.15
    cd build_unix
    ../dist/configure --prefix=/usr/local/berkeleyDB
    make && make install

    在安装之后,需要做以下操作,才能保证安装memcacheq成功
    编辑 /etc/ld.so.conf

    增加以下内容:
    /usr/local/libevent/lib
    /usr/local/berkeleyDB/lib

    并运行以下命令;
    /sbin/ldconfig

    3.MemcacheQ
    下载memcacheq-0.2.0.zip
    解压
    ./configure --prefix=/usr/local/memcacheq --enable-threads
    make && make install


    二.memcacheq启动
    1.启动
    /usr/local/memcacheq/bin/memcacheq -d -r -uroot -p11212 -H /var/memcacheq/data  -l 127.0.0.1 -N -R -v -L 1024 -B 1024 >

    /var/memcacheq/logs/mq_error.log 2>&1

    /var/mcq/data 必须自己创建
    检查是否启动成功:
    ps -ef |grep memcacheq

    2.开机启动
    编辑 /etc/rc.local
    增加以下内容:
    /usr/local/memcacheq/bin/memcacheq -d -r -uroot -p11212 -H /var/memcacheq/data  -l 127.0.0.1 -N -R -v -L 1024 -B 1024 >

    /var/memcacheq/logs/mq_error.log 2>&1

    3.memcacheq各启动参数解释
    -p <num> TCP监听端口(default: 22201)
    -U <num> UDP监听端口(default: 0, off)
    -s <file> unix socket路径(不支持网络)
    -a <mask> unix socket访问掩码(default 0700)
    -l <ip_addr> 监听网卡
    -d 守护进程
    -r 最大化核心文件限制
    -u <username> 以用户身份运行(only when run as root)
    -c <num> 最大并发连接数(default is 1024)
    -v 详细输出 (print errors/warnings while in event loop)
    -vv 更详细的输出 (also print client commands/reponses)
    -i 打印许可证信息
    -P <file> PID文件
    -t <num> 线程数(default 4)
    --------------------BerkeleyDB Options-------------------------------
    -m <num> BerkeleyDB内存缓存大小, default is 64MB
    -A <num> 底层页面大小, default is 4096, (512B ~ 64KB, power-of-two)
    -H <dir> 数据库家目录, default is '/data1/memcacheq'
    -L <num> 日志缓冲区大小, default is 32KB
    -C <num> 多少秒checkpoint一次, 0 for disable, default is 5 minutes
    -T <num> 多少秒memp_trickle一次, 0 for disable, default is 30 seconds
    -S <num> 多少秒queue stats dump一次, 0 for disable, default is 30 seconds
    -e <num> 达到缓存百分之多少需要刷新, default is 60%
    -E <num> 一个单一的DB文件有多少页, default is 16*1024, 0 for disable
    -B <num> 指定消息体的长度,单位字节, default is 1024
    -D <num> 多少毫秒做一次死锁检测(deadlock detecting), 0 for disable, default is 100ms
    -N 开启DB_TXN_NOSYNC获得巨大的性能改善, default is off
    -R 自动删除不再需要的日志文件, default is off

    4.memcacheq关闭:
    ps -ef |grep memcacheq查找出pid
    kill -9 pid

    三.memcacheq的php使用示例
    <?php
    header("content-type:text/html;charset=utf-8");
    $q = new memcache();
    $q->addServer('127.0.0.1','12202');
    $q->setCompressThreshold(1024,0.3);
    if(isset($_POST['content'])) {
        echo "bytes ", strlen($_POST['content']);
        if(!$q->set('post', $_POST['content'] )) {
          echo "set failed";
        }
    }
    if(isset($_GET['get'])) {
        print_r($q->get('post'));
        $q->close();
        exit;
    }
    $q->close();
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>写放数据</title>
    </head>
    <body>
    <form action="?" method="post">
    输入内容<br />
    <textarea name="content" cols="40" rows="10"></textarea>
    <input type="submit" value="submit" />
    </form>
    </body>
    </html>

  • 相关阅读:
    23. 霍纳法则(多项式求值快速算法)
    22. 欧几里德算法(求最大公约数GCD)
    [poj 2106] Boolean Expressions 递归
    [poj 1185] 炮兵阵地 状压dp 位运算
    [MOOC程序设计与算法二] 递归二
    [poj 3254] Corn Fields 状压dp
    [hdu 1074] Doing Homework 状压dp
    [hdu 1568] Fibonacci数列前4位
    [haut] 1281: 邪能炸弹 dp
    [hdu 2604] Queuing 递推 矩阵快速幂
  • 原文地址:https://www.cnblogs.com/itfenqing/p/4429394.html
Copyright © 2020-2023  润新知