MemcacheQ 安裝與使用

2021-07-14 12:04:52 字數 4162 閱讀 5502

blog.csdn.net/fdipzone/article/details/17933673#comments    

特點:1.簡單易用。

2.處理速度快。

3.可建立多條佇列。

4.併發效能高。

5.與memcache協議相容。

memcacheq 依賴 berkeley db 和 libevent(1.4 或更高)。

berkeley db用於持久化儲存佇列資料,避免當memcacheq崩潰或伺服器宕機時發生資料丟失。

1.安裝berkeley db

[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

[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

建立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 tcp監聽埠(default: 22201)

-u udp監聽埠(default: 0, off)

-s unix socket路徑(不支援網路)

-a unix socket訪問掩碼(default 0700)

-l 監聽網絡卡

-d 守護程序

-r 最大化核心檔案限制

-u 以使用者身份執行(only when run as root)

-c 最大併發連線數(default is 1024)

-v 詳細輸出 (print errors/warnings while in event loop)

-vv 更詳細的輸出 (also print client commands/reponses)

-i 列印許可證資訊

-p pid檔案

-t 執行緒數(default 4)

--------------------berkeleydb options-------------------------------

-m berkeleydb記憶體快取大小, default is 64mb

-a 底層頁面大小, default is 4096, (512b ~ 64kb, power-of-two)

-h 資料庫家目錄, default is '/data1/memcacheq'

-l 日誌緩衝區大小, default is 32kb

-c 多少秒checkpoint一次, 0 for disable, default is 5 minutes

-t 多少秒memp_trickle一次, 0 for disable, default is 30 seconds

-s 多少秒queue stats dump一次, 0 for disable, default is 30 seconds

-e 達到快取百分之多少需要重新整理, default is 60%

-e 乙個單一的db檔案有多少頁, default is 16*1024, 0 for disable

-b 指定訊息體的長度,單位位元組, default is 1024

-d 多少毫秒做一次死鎖檢測(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上檢視**片派生到我的**片

[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').'

';

echo $memcache_obj->get('demoqueue1').'

';

echo $memcache_obj->get('demoqueue1').'

';

echo $memcache_obj->get('demoqueue1').'

';

$memcache_obj->close();

?>

MAC 安裝MemcacheQ 安裝與使用

1.brew install libevent 2.brew install berkeley db 2.安裝memcacheq wget tar zxvf db 4.7.25.nc.tar.gz cd db 4.7.25.nc cd build unix dist configure make m...

MemcacheQ安裝及使用

一.安裝 memcacheq 是乙個簡單的分布式佇列服務,它的執行依賴於berkeleydb 和 libevent,所以需要先安裝berkeleydb和libevent.download from how to install berkeleydb tar xvzf db 5.3.21.tar.gz...

MemcacheQ安裝及使用

一.memcacheq安裝記錄 解壓.configure prefix usr local memcacheq enable threads make make install 二.memcacheq啟動 1.啟動 usr local memcacheq bin memcacheq d r uroo...