memcachedb應(yīng)用:編譯以及安裝
memcachedb跟memcache一樣,網(wǎng)絡(luò)socket數(shù)據(jù)處理依賴于libevent,所以,在安裝之前需要下載三個(gè)安裝包,即libevent、Berkeley Db以及memcachedb。
Libevent 下載頁面:http://monkey.org/~provos/libevent/ ,下載***穩(wěn)定版本就行。
Berkeley Db下載頁面:http://www.oracle.com/technology/software/products/berkeley-db/index.html 需要安裝4.6版本
memcachedb下載頁面:http://code.google.com/p/memcachedb/ 下載***版本 0.1.0版本
按照順序安裝,Libevent和Berkeley Db按照常規(guī)安裝即可,這里以Linux 環(huán)境為標(biāo)準(zhǔn)。
[======Libevent=====]
tar -zxvf libevent-1.3e.tar.gz
cd libevent-1.3e
./configure
make && make install
[======Berkeley Db=====]
tar -zxvf db-4.6.19.tar.gz
#需要進(jìn)入特定操作系統(tǒng)編譯環(huán)境,更常規(guī)軟件的編譯有些區(qū)別
cd db-4.6.19/build_unix/
#然后才能夠開始編譯
../dist/configure
make && make install
#如果沒有指定特殊安裝路徑,編譯完成,需要將Berkeley Db運(yùn)行庫(kù)的路徑添加到系統(tǒng)配置里面
echo "/usr/local/BerkeleyDB.4.6/lib/" >> /etc/ld.so.conf
#重載系統(tǒng)Ld運(yùn)行庫(kù)
ldconfig
[======Memcachedb=====]
tar -zxvf memcachedb-0.1.0.tar.gz
cd memcachedb-0.1.0
#如果您要存儲(chǔ)的內(nèi)容的鍵值的長(zhǎng)度和單筆內(nèi)容的長(zhǎng)度有變化,您需要更改一個(gè)文件 memcachedb.h
vim memcachedb.h
////////////////////////////////////////////////////////////
#define END_LEN 32 ----> 這是是 Key+Value 的***長(zhǎng)度
#define END_LEN_STR "31" ---> 這是是 key 的***長(zhǎng)度
/////////////////////////////////////////////////////////
#默認(rèn)key鍵值只預(yù)留了31個(gè)字節(jié)的長(zhǎng)度,單筆數(shù)據(jù)最長(zhǎng)是32個(gè)字節(jié)數(shù)。
#例如您如果需要用這個(gè)玩藝來存儲(chǔ)文本內(nèi)容數(shù)據(jù),假設(shè)您的鍵值是一個(gè)32個(gè)字節(jié)的md5,單筆數(shù)據(jù)允許最長(zhǎng)10K,那您可以設(shè)定
////////////////////////////////////////////////////////////
#define END_LEN 102400 ----> 這是是 Key+Value 的***長(zhǎng)度
#define END_LEN_STR "32" ---> 這是是key的***長(zhǎng)度
/////////////////////////////////////////////////////////
#修改完之后,直接make就行
make
#編譯完之后,將生成可執(zhí)行memcachedb拷貝到 /usr/sbin/
cp -f memcachedb /usr/sbin/
#啟動(dòng) memcachedb
#***種,讀寫合并模式,即不做輔拷貝,即讀又寫,不做冗余備份
memcachedb -p21211 -d -r -u root -H /data/mdb_11211 -N
#第二種,讀寫分離/備份模式
#主服務(wù)器 192.168.0.1 讀寫監(jiān)聽 11211 ,同步通過31211的端口完成,不占用繁忙的主服務(wù)端口
memcachedb -p21211 -d -r -u root -H /data/mdb_11211_m -N -R 127.0.0.1:31211 -M
# 輔服務(wù)器 192.168.0.2 只讀監(jiān)聽 21212,從192.168.0.1 的 31211端口同步數(shù)據(jù),同時(shí)再開一個(gè)31212端口對(duì)外提供數(shù)據(jù)同步服務(wù)
memcachedb -p21212 -d -r -u root -H /data/mdb_11211_from_16801_s -O 192.168.0.1:31211 -R 192.168.0.2:31212 -S
【編輯推薦】