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>
MemcacheQ安装及使用的更多相关文章
- MemcacheQ 安装与使用
MemcacheQ 是一个基于 MemcacheDB 的消息队列服务器.官网地址:http://memcachedb.org/memcacheq/ 特点: 1.简单易用. 2.处理速度快. 3.可创建 ...
- MemcacheQ安装
一.memcacheq介绍 特性: 1.简单易用 2.处理速度快 3.多条队列 4.并发性能好 5.与memcache的协议兼容 6.在zend framework中使用方便 memcacheq依赖于 ...
- php 队列
一.php中对共享内存,消息队列的操作 http://blog.csdn.net/haitun312366/article/details/8614797 二.PHP memcache 队列类 htt ...
- MemcacheQ 的安装与使用
1.安装libevent 官网:http://www.libevent.org/ 全选复制放进笔记 $ wget https://github.com/downloads/libevent/libev ...
- 持久化消息队列memcacheq的安装配置
MemcacheQ 是一个基于 MemcacheDB 的消息队列服务器. 一.memcacheq介绍 特性: 1.简单易用 2.处理速度快 3.多条队列 4.并发性能好 5.与memcache的协议兼 ...
- 在CentOS 6.2上安装 MemcacheQ 最新版
1. 安装 yum install gcc cc make libevent libevent-devel 2. 安装Berkeley DB 下载:http://www.oracl ...
- 安装memcacheq
1.下载memcacheq包 下载地址:http://code.google.com/p/memcacheq/downloads/list 解压包:# tar -zxvf memcache ...
- php 安装memcacheq
berkeley: http://download.oracle.com/otn/berkeley-db/db-6.1.19.tar.gz?AuthParam=1408431634_4887d4468 ...
- 在linux下安装memcacheq
#!/bin/bash mkdir ~/build cd ~/build wget http://download.oracle.com/berkeley-db/db-5.1.19.tar.gz .t ...
随机推荐
- 使用awk排除第一行和第二行的数据
因为linux shell命令行输出的前面几行一般是指导或是格式字段说明, 而不是实现的数据,所以在作过滤时,一般需要排除前面的几行. 现需要找出指定机器开放的所有端口. 我遇到的情况是要排除前面两行 ...
- Type InvokeMember()用法简介
举例: Type tDate = typeof(System.DateTime); Object result = tDate.InvokeMember("Now", Bindin ...
- spring classpath & classpath*
classpath-找到系统类路径下的第一个匹配的配置文件 classpath*-找到系统类路径下的所有符合要求的配置文件 参考资料:http://www.micmiu.com/j2ee/spring ...
- Hark的数据结构与算法练习之若领图排序ProxymapSort
算法说明 若领图排序是分布排序的一种. 个人理解,若领图排序算是桶排序+计数排序的变异版,桶排序计数排序理解了,那么若领图排序理解起来就会比较容易.区别其实就是存储中间值的方式做了调整…… 话说,这个 ...
- mvc-4控制器和状态(2)
访问视图 常见地视图模式时一个视图对应一个控制器,视图包含一个id,通过id传入控制器:在视图之中的元素则使用class 这里会使用jquery的选择器,为了减少使用,可以设置一个专门用于存放选择器到 ...
- Xamarin Android项目运行失败
Xamarin Android项目运行失败 错误信息:Build Failed: MonoDroid does not support running the previous version. P ...
- [LintCode] Binary Tree Serialization
Design an algorithm and write code to serialize and deserialize a binary tree. Writing the tree to a ...
- LightOJ1005 Rooks(DP/排列组合)
题目是在n*n的棋盘上放k个车使其不互相攻击的方案数. 首先可以明确的是n*n最多只能合法地放n个车,即每一行都指派一个列去放车. dp[i][j]表示棋盘前i行总共放了j个车的方案数 dp[0][0 ...
- LightOJ1119 Pimp My Ride(状压DP)
dp[S]表示已经完成的工作集合 枚举从哪儿转移过来的,再通过枚举计算花费..水水的.. #include<cstdio> #include<cstring> #include ...
- 数据库操作sql【转】
Student(S#,Sname,Sage,Ssex) 学生表Course(C#,Cname,T#) 课程表SC(S#,C#,score) 成绩表Teacher(T#,Tname) 教师表 问题:1. ...