标题: memcachedb应用指南 (查看:214 回复:3)
zhangxiuyun
版主



现役斑竹  
UID 479024
精华 1
积分 1177
帖子 1942
MST币 12366 点    
BST币 1177 点    赚取
阅读权限 180
注册 2007-1-3
来自 江西赣州
状态 离线
 
[ 使用道具 ]  
发表于 2008-9-21 21:45  [ 资料 ]  [ 博客 ]  [ 短消息 ]  [ 加为好友添加 zhangxiuyun 为MSN好友 通过MSN和 zhangxiuyun 交谈 QQ
memcachedb应用指南
本帖发表在我是网管论坛,帖子地址:http://bbs.54master.com/272711,1,1
memcachedb应用指南
原文地址:  http://blog.csdn.net/simonlsy

memcachedb故名思义就是 memcached + bdb,是基于memcached Socket层和berkeley-db存储层结构的实现,是新浪互动社区技术团队2007年的一项重大的技术成果,现在应用于新浪互动社区多个产品线中,其中包括新浪博客等重头产品。能够实现任意 memcache api的调用、数据实时落地以及主辅实时备份。

项目主页:  http://code.google.com/p/memcachedb/

为什么要选择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 ... keley-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  

[ 点这里复制网址,推荐给你QQ/MSN上的好友们! ]
本站声明:以上内容由网友 zhangxiuyun 提供,与54master立场无关!
《我是网管》论坛
退出江湖,专心学习技术!!!
[ 顶部 ]
域名、虚拟主机、服务器租用/托管一站式IT服务 V5.0
西山一片云
论坛坛主



坛主  
UID 316158
精华 11
积分 563
帖子 4868
MST币 12699 点    
BST币 563 点    赚取
阅读权限 255
注册 2003-3-23
来自 DUST2
状态 离线
 
[ 使用道具 ]  
发表于 2008-9-21 22:46  [ 资料 ]  [ 博客 ]  [ 短消息 ]  [ 加为好友
这个东西是好东西。

本站声明:以上内容由网友 西山一片云 提供,与54master立场无关!
《我是网管》论坛
[ 顶部 ]
域名、虚拟主机、服务器租用/托管一站式IT服务 V5.0
洛水思神
学徒网管




UID 800601
精华 0
积分 5
帖子 64
MST币 50 点    
BST币 5 点    赚取
阅读权限 60
注册 2008-9-9
状态 离线
 
[ 使用道具 ]  
发表于 2008-9-21 23:51  [ 资料 ]  [ 博客 ]  [ 短消息 ]  [ 加为好友
.......................................

本站声明:以上内容由网友 洛水思神 提供,与54master立场无关!
[ 顶部 ]
域名、虚拟主机、服务器租用/托管一站式IT服务 V5.0
zhangxiuyun
版主



现役斑竹  
UID 479024
精华 1
积分 1177
帖子 1942
MST币 12366 点    
BST币 1177 点    赚取
阅读权限 180
注册 2007-1-3
来自 江西赣州
状态 离线
 
[ 使用道具 ]  
发表于 2008-9-22 08:53  [ 资料 ]  [ 博客 ]  [ 短消息 ]  [ 加为好友添加 zhangxiuyun 为MSN好友 通过MSN和 zhangxiuyun 交谈 QQ
谢谢支持,非常有用!!!

本站声明:以上内容由网友 zhangxiuyun 提供,与54master立场无关!
《我是网管》论坛
退出江湖,专心学习技术!!!
[ 顶部 ]
域名、虚拟主机、服务器租用/托管一站式IT服务 V5.0
  
 



当前时区 GMT+8, 现在时间是 2008-12-2 06:34

Powered by Discuz! 5.5.0  © 2001-2007 Comsenz Inc.
Processed in 0.066945 second(s), 12 queries , Gzip enabled

清除 Cookies - 关于我是网管 - 联系我是网管 - 广告服务 - 诚聘版主 - 无图版 - WAP -