MemcacheQ 是一个基于MemcacheDB的消息队列服务器。memcacheq依赖于Berkeley DB和libevent。Berkeley DB用于持久化存储队列的数据,避免在memcacheq崩溃或这服务器当掉时候,不至于数据丢失。html
1. 下载Berkeley DB后传至服务器中。登录下载最新的稳定版Berkeley DBgit
tar -zvxf db-6.0.20.tar.gzgithub cd db-6.0.20数据库 cd build_unix/缓存 ./dist/configure服务器 make && make install网络 ln -s/usr/local/BerkeleyDB.6.0/lib/libdb-6.0.so /usr/lib/并发 |
2. 安装libeventoracle
wget https://github.com/downloads/libevent/libevent/libevent-2.0.21-stable.tar.gzsocket tar -zvxflibevent-2.0.21-stable.tar.gz cd libevent-2.0.21-stable ./configure --prefix=/usr make && make install echo "/usr">/etc/ld.so.conf.d/libevent.conf ldconfig |
3.安装memcacheq
wget http://memcacheq.googlecode.com/files/memcacheq-0.2.0.tar.gz ./configure --prefix=/usr/local/memcacheq--with-libevent=/usr --with-bdb=/usr/local/BerkeleyDB.6.0 --enable-threads make && make install |
4.建立数据库目录
mkdir /data1 chown nobody:nobody /data1 |
5.启动memcacheq
memcacheq -d -r -u nobody -v -m 1024 -H /data1 -N -R > /data1/data1.log 2>&1 ![]() |
6.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/warningswhile in event loop) -vv 更详细的输出 (also print clientcommands/reponses) -i 打印许可证信息 -P <file> PID文件 --------------------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 fordisable -B <num> 指定消息体的长度,单位字节, default is 1024 -D <num> 多少毫秒作一次死锁检测(deadlock detecting), 0 fordisable, default is 100ms -N 开启DB_TXN_NOSYNC得到巨大的性能改善, default is off -R 自动删除再也不须要的日志文件, default is off |
7.经常使用命令:
待定,未完善 |