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.經常使用命令:
待定,未完善 |