MemcacheQ 安装与使用
2016-07-06 16:02
477 查看
blog.csdn.net/fdipzone/article/details/17933673#comments <h1><span class="link_title"><a target=_blank href="http://blog.csdn.net/fdipzone/article/details/17933673">MemcacheQ 安装与使用 </a></span></h1> MemcacheQ 是一个基于 MemcacheDB 的消息队列服务器。官网地址:http://memcachedb.org/memcacheq/ 特点: 1.简单易用。 2.处理速度快。 3.可创建多条队列。 4.并发性能高。 5.与memcache协议兼容。 MemcacheQ 依赖 Berkeley DB 和 libevent(1.4 或更高)。 Berkeley DB用于持久化存储队列数据,避免当MemcacheQ崩溃或服务器死机时发生数据丢失。 1.安装Berkeley DB 下载地址:http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/downloads/index.html?ssSourceSiteId=ocomcn [plain] view plain copy 在CODE上查看代码片派生到我的代码片 $tar xvzf db-6.0.20.tar.gz $cd db-6.0.20/ $cd build_unix/ $../dist/configure $make $sudo make install 2.安装libevent 下载地址:http://libevent.org/ [plain] view plain copy 在CODE上查看代码片派生到我的代码片 $tar xvzf libevent-2.0.21-stable.tar.gz $cd libevent-2.0.21-stable $./configure $make $sudo make install 增加两行到 /etc/ld.so.conf [plain] view plain copy 在CODE上查看代码片派生到我的代码片 /usr/local/lib /usr/local/BerkeleyDB.6.0/lib 新增完运行命令刷新 [plain] view plain copy 在CODE上查看代码片派生到我的代码片 sudo ldconfig 3.安装MemcacheQ 下载地址:https://code.google.com/p/memcacheq/downloads/list 创建libdb.so softlink [plain] view plain copy 在CODE上查看代码片派生到我的代码片 ln -s /usr/local/BerkeleyDB.6.0/lib/libdb-6.0.so /usr/lib/libdb.so [plain] view plain copy 在CODE上查看代码片派生到我的代码片 $tar xvzf memcacheq-0.2.x.tar.gz $cd memcacheq-0.2.x $./configure --with-bdb=/usr/local/BerkeleyDB.6.0 --with--libevent=/usr/lib --enable-threads $make $sudo make install --with-bdb=/usr/local/BerkeleyDB.6.0 指定 Berkeley DB路径 --with--libevent=/usr/lib 指定 libevent 路径 --enable-threads 开启多线程 4.运行与使用 参数列表: [plain] view plain copy 在CODE上查看代码片派生到我的代码片 -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 启动MemcacheQ [plain] view plain copy 在CODE上查看代码片派生到我的代码片 memcacheq -d -r -H /data1/memcacheq -N -R -v -L 1024 -B 1024 > /data1/mq_error.log 2>&1 [plain] view plain copy 在CODE上查看代码片派生到我的代码片 memcacheq -h 查看更多设置 [php] view plain copy 在CODE上查看代码片派生到我的代码片 <?php /* 连接memcacheq server */ $memcache_obj = new Memcache(); $memcache_obj->connect('localhost', 22201); // default port 22201 /* 添加到对列 */ $memcache_obj->set('demoqueue1', 'message body here1', MEMCACHE_COMPRESSED, 0); $memcache_obj->set('demoqueue1', 'message body here2', MEMCACHE_COMPRESSED, 0); $memcache_obj->set('demoqueue1', 'message body here3', MEMCACHE_COMPRESSED, 0); $memcache_obj->set('demoqueue1', 'message body here4', MEMCACHE_COMPRESSED, 0); /* 移出对列 */ echo $memcache_obj->get('demoqueue1').'<br>'; echo $memcache_obj->get('demoqueue1').'<br>'; echo $memcache_obj->get('demoqueue1').'<br>'; echo $memcache_obj->get('demoqueue1').'<br>'; $memcache_obj->close(); ?>
相关文章推荐
- Memcache知识点梳理
- 五种基本memcached 命令
- Memcache需要注意的几点【小强测试班学员作品】
- Memcache的监控方法【小强测试班学员作品】
- Memcache的监控方法【小强测试班学员作品】
- Memcache的安装与启动【小强测试培训班学员作品】
- 持久化消息队列memcacheq的安装配置
- Redis 和 Memcached 的区别详解
- Linux下Memcached服务器部署
- memcache扩展开启
- 使用PHP连接、操纵Memcached的原理和教程
- Redis和Memcached的区别
- SSO单点登录基于CAS架构封装 Memcached 实例
- MemCache缓存和C#自带的Cache缓存
- memcached 入门
- memcached 原理及详细配置
- Spring Memcache配置及缺少com.danga的解决
- memcached 适用的场景
- Redis和Memcached区别
- Redis和Memcached的区别