国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 服務器 > 管理維護 > 正文

memcachedb介紹、編譯以及安裝

2024-09-10 14:19:00
字體:
來源:轉載
供稿:網友

memcachedb故名思義就是 memcached + bdb,是基于memcached Socket層和berkeley-db存儲層結構的實現, 是新浪互動社區技術團隊2007年的一項重大的技術成果,現在應用于新浪互動社區多個產品線中,其中包括新浪博客等重頭產品。能夠實現任意memcache api的調用、數據實時落地以及主輔實時備份。

協議:New BSD License
作者:stvchu, gary.caokai, forever.sky81
團隊:新浪互動社區事業部──博客產品
項目主頁:http://memcachedb.org/

為什么選擇memcached

為什么要選擇memcachedb:沒有什么特殊的原因,我們有最好的理由就是,在做到最大不犧牲數據讀、寫性能的前提下,我們能夠讓您原來存儲在memcache里的數據不再遭受系統宕機或者系統掉電而丟失,即使服務器電源爆炸了,只要硬盤還能夠正常工作,換到另外一臺服務器上,您的數據依然安然無恙地在硬盤上。

性能的擔憂:我們做過小數據測試,小數據(幾十個字節)數據的讀寫,每秒鐘并發能夠維持在5000+(單塊146Scis硬盤,CPU和內存配置幾乎可以忽略因為這不是性能瓶頸)。基本上滿足所有互聯網高效存儲的應用。

應用場合:需要頻繁讀寫的小數據。例如數字類服務就像點擊數,需要頻繁寫入小數據的例如評論系統,需要記錄用戶狀態的例如在線人數以及在線用戶等等。當然,如果您想用來存儲單筆超過10K以上的數據,例如新聞或者文章或者論壇帖子也可以,但是我們沒有嘗試過,如果您真的用來這樣子玩了,可以反饋給我們。

數據備份&&讀寫分離:memcachedb支持主輔實時無差異同步,配置主服務和輔服務僅僅需要很短的一條啟動命令。當然,您也可以利用這一便利特性來實現讀寫分離,那樣子會讓您的系統更加的高效。

穩定性:memcachedb目前被應用于新浪互動社區多個產品線中,具有鋼鐵般的品質,Sina出品,品質毋庸置疑。

編譯以及安裝

memcachedb跟memcache一樣,網絡socket數據處理依賴于libevent,所以,在安裝之前需要下載三個安裝包,即libevent、Berkeley Db以及memcachedb。

Libevent 下載頁面:http://monkey.org/~provos/libevent/ ,下載最新穩定版本就行。

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按照常規安裝即可,這里以Linux 環境為標準。

[======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

#需要進入特定操作系統編譯環境,更常規軟件的編譯有些區別

cd db-4.6.19/build_unix/

#然后才能夠開始編譯

  ../dist/configure

make && make install

#如果沒有指定特殊安裝路徑,編譯完成,需要將Berkeley Db運行庫的路徑添加到系統配置里面

echo "/usr/local/BerkeleyDB.4.6/lib/" >> /etc/ld.so.conf

#重載系統Ld運行庫

ldconfig

[======Memcachedb=====]

tar -zxvf memcachedb-0.1.0.tar.gz

cd memcachedb-0.1.0

#如果您要存儲的內容的鍵值的長度和單筆內容的長度有變化,您需要更改一個文件 memcachedb.h

vim memcachedb.h

////////////////////////////////////////////////////////////

#define END_LEN 32               ----> 這是是 Key+Value 的最大長度
#define END_LEN_STR "31"   ---> 這是是 key 的最大長度

 /////////////////////////////////////////////////////////

 #默認key鍵值只預留了31個字節的長度,單筆數據最長是32個字節數。

#例如您如果需要用這個玩藝來存儲文本內容數據,假設您的鍵值是一個32個字節的md5,單筆數據允許最長10K,那您可以設定

////////////////////////////////////////////////////////////

#define END_LEN 102400               ----> 這是是 Key+Value 的最大長度
#define END_LEN_STR "32"   ---> 這是是key的最大長度

 /////////////////////////////////////////////////////////

#修改完之后,直接make就行

make

#編譯完之后,將生成可執行memcachedb拷貝到 /usr/sbin/

cp -f memcachedb  /usr/sbin/

 #啟動 memcachedb

#第一種,讀寫合并模式,即不做輔拷貝,即讀又寫,不做冗余備份

memcachedb -p21211 -d -r -u root -H  /data/mdb_11211  -N

#第二種,讀寫分離/備份模式

#主服務器 192.168.0.1 讀寫監聽 11211 ,同步通過31211的端口完成,不占用繁忙的主服務端口

memcachedb -p21211 -d -r -u root -H  /data/mdb_11211_m -N -R 127.0.0.1:31211 -M

# 輔服務器 192.168.0.2  只讀監聽 21212,從192.168.0.1 的 31211端口同步數據,同時再開一個31212端口對外提供數據同步服務

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

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 益阳市| 宁国市| 安新县| 鹿邑县| 德令哈市| 奉贤区| 宁武县| 贡觉县| 大丰市| 阿拉善右旗| 缙云县| 堆龙德庆县| 琼结县| 九寨沟县| 怀集县| 通化市| 视频| 房产| 隆昌县| 贡山| 高唐县| 济宁市| 墨玉县| 吴川市| 柯坪县| 岳普湖县| 金阳县| 吉林省| 库尔勒市| 曲沃县| 文昌市| 德令哈市| 额敏县| 霸州市| 观塘区| 独山县| 锡林郭勒盟| 汪清县| 金溪县| 南郑县| 长岛县|