`
sealbird
  • 浏览: 584597 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Memcachedb_ 很好

阅读更多
编辑词条分享
新知社
新浪微博
人人网
腾讯微博
移动说客
网易微博
开心001
天涯

本词条由Valian创建,共有1位协作者编辑了1次。最新协作者:Valian。

请用一段简单的话描述该词条,马上添加摘要。
目录
1 基本结构
2 编译以及安装
3 性能测试
1 基本结构
2 编译以及安装
3 性能测试
为本词条添加视频和组图相关影像故名思义就是memcached+bdb,是基于memcachedSocket层和berkeley-db存储层结构的实现,是新浪互动社区技术团队2007年的一项重大的技术成果,现在应用于新浪互动社区多个产品线中,其中包括新浪博客等重头产品。通过该系统能够实现任意memcachedapi的调用、数据实时落地以及主辅实时备份等功能。

Memcachedb - 基本结构
Memcachedb是一款支持高并发的分布式持久存储系统,对任何原有memcached客户端来讲,它仍旧是个memcached,但是,它的数据是可以持久存储的。
  前端:memcached的网络层
  后端:BerkeleyDB存储

  写速度:从本地服务器通过memcache客户端(libmemcache)set2亿条16字节长的key,10字节长的Value的记录,耗时16572秒,平均速度12000条记录/秒。
  读速度:从本地服务器通过memcache客户端(libmemcache)get100万条16字节长的key,10字节长的Value的记录,耗时103秒,平均速度10000条记录/秒。

  •支持的memcache命令
  get,set,add,replace
  incr,decr
  delete
  stats
  flush_all

  •私有命令
  db_checkpoint,db_archive
  db_ismaster,db_whoismaster(forreplication)




Memcachedb














Memcachedb - 编译以及安装
1.先安装libevent:
#tarzxvflibevent-1.2.tar.gz
#cdlibevent-1.2
#./configure–prefix=/usr
#make
#makeinstall

2.测试libevent是否安装成功:
#ls-al/usr/lib|greplibevent
lrwxrwxrwx1rootroot2111??1217:38libevent-1.2.so.1->libevent-1.2.so.1.0.3
-rwxr-xr-x1rootroot26354611??1217:38libevent-1.2.so.1.0.3
-rw-r–r–1rootroot45415611??1217:38libevent.a
-rwxr-xr-x1rootroot81111??1217:38libevent.la
lrwxrwxrwx1rootroot2111??1217:38libevent.so->libevent-1.2.so.1.0.3
还不错,都安装上了。

3.安装BerkeleyDb
tar-zxvfdb-4.6.19.tar.gz
#需要进入特定操作系统编译环境,更常规软件的编译有些区别
cddb-4.6.19/build_unix/
#然后才能够开始编译
../dist/configure
make&&makeinstall
#如果没有指定特殊安装路径,编译完成,需要将BerkeleyDb运行库的路径添加到系统配置里面
echo"/usr/local/BerkeleyDB.4.6/lib/">>/etc/ld.so.conf
#重载系统Ld运行库
ldconfig

4.安装memcachedb,同时需要安装中指定libevent的安装位置:
#cd/tmp
#tar-zxvfmemcachedb-1.0.3.tar.gz
#cdmemcachedb-1.0.3
#./configure–with-libevent=/usr
#make
#makeinstall
如果中间出现报错,请仔细检查错误信息,按照错误信息来配置或者增加相应的库或者路径。
安装完成后会把memcachedb放到/usr/local/bin/memcachedb,

5.测试是否成功安装memcachedb:
#ls-al/usr/local/bin/mem*
-rwxr-xr-x1rootroot13798611??1217:39/usr/local/bin/memcachedb
6.启动memcachedb
memcachedb-p11212-d-r-uroot-l192.168.50.117-H/data/mdb_11212-N-P/tmp/memcachedb.pid
7.如查报BerkeleyDb的文件找不到的可以加上下面这句话
exportLD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/BerkeleyDB.4.6/lib

Memcachedb - 性能测试
1.环境
OS:Linux,Ubuntu7.0464-bit
Memory:4G
CPU:Intel(R)Pentium(R)DCPU2.66GHz
SCSIDISK,ext3filesystem

libevent1.3e
Memcached1.2.4
BerkeleyDB4.6.21
Java1.6.0
memcachedb0.1.1安装方法http://blog.csdn.net/simonlsy/

2.测试方法
client/server在同一机上,使用ethernetinterface连接,不是localhost
本Linux同时在作ADSLroutegateway,可能会对测试造成小量影响。

JAVACLIENT,使用3线程
Key:数字,1~100万
数据:100字节字符串


3.测试结果
Memcached写速度
平均速度:16222次/秒
最大速度18799次/秒

Memcached读速度
平均速度:20971次/秒
最大速度22497次/秒

Memcachedb写速度
平均速度:8958次/秒
最大速度10480次/秒

Memcachedb读速度
平均速度:6871次/秒
最大速度12542次/秒

由于硬件环境,网络环境,线程数,编程语言不同,可能测试结果差别也很大,本测试结果只起相对参考作用。即比较memcached/memcachedb在相同环境下的性能区别。


分享到:
评论

相关推荐

    Redis实战.pdf

    1.1.2.1 大规模的互联网应用:随着互联网用户数量的增加,传统的数据库系统可能无法满足高并发、低延迟的需求,Key-Value Store能很好地解决这个问题。 1.1.2.2 云存储:在云计算环境中,Key-Value Store的分布式...

    redis实战-红丸出品

    Redis是一种开源的高性能键值存储系统,常用于构建各种应用程序中的缓存层。它支持多种数据结构,如字符串(strings)、...对于希望在实际项目中利用Redis提高性能和可靠性的开发者来说,这本书提供了一个很好的起点。

    redis实战redis实战redis实战redis实战

    主要考虑的因素可能包括它可以很好地服务于大规模互联网应用、云存储解决方案,以及在实际应用案例中Redis的优秀表现。 在"初识Redis"章节,将详细探讨Redis的数据类型,包括但不限于字符串、列表、集合、有序集合...

    redis实战pdf文档

    它不仅被广泛应用于构建高速缓存、消息队列、会话存储等多种系统组件,还能够很好地搭建企业级应用。 文档首先介绍了Key-Value存储系统的基本概念,并对不同的Key-Value存储系统进行了比较,比如Voldemort、Dynamo...

    Redis实战》电子书.pdf

    - **云存储**:由于其分布式架构,键值存储可以很好地适应云环境中的动态资源分配和弹性需求。 - **Redis实际应用案例**:通过介绍Redis在不同场景下的实际应用,强调了它的实用性。 #### 1.3 初识Redis Redis提供...

    NOSQL内存数据库选型报告x.docx

    2. **面向文档的数据库**:这类数据库如MongoDB和CouchDB,主要用于处理海量数据的存储需求,同时保证较好的查询性能。它们通常支持JSON格式的数据存储,并提供灵活的数据模型。 3. **面向分布式计算的数据库**:...

    关系数据库还是NoSQL数据库.doc

    3. 键值存储:如Tokyo Cabinet/Tyrant、Berkeley DB、MemcacheDB和Redis,这类数据库以键值对形式存储数据,查询速度快,适用于缓存和快速访问场景。 4. 图存储:如Neo4J、FlockDB,专门用于存储和查询复杂的图形...

    一切为了分布式——2009年Web后端技术回顾.pdf

    例如,Memcachedb的出现引起了广泛关注,随后涌现了Tokyo Cabinet、Redis和Cassandra等著名键值存储解决方案。 分布式键值存储成为关注焦点,其中Dynamo是分布式实现的典型代表。Dynamo的设计理念被许多分布式键值...

    《Redis实战》电子书

    - **云存储**:云计算环境下的数据存储对可扩展性和高可用性有较高要求,Key-Value存储系统能够很好地适应这一场景。 - **Redis实际应用案例**:例如实时数据分析、消息队列、会话管理等场景中,Redis都展现出了其...

    redis实战指导

    Dynamo的设计思想对于后续许多NoSQL系统的开发都有很大的影响。 ##### 1.1.3 memcachedb memcachedb是一种基于内存的键值存储系统,它是在memcached的基础上发展起来的。memcachedb不仅支持快速的数据存取,还具备...

    redis实战中文 pdf

    - **原因**: Key-Value Store天然适应于分布式环境,易于扩展,能够很好地支持云计算环境下的数据存储需求。 ##### 1.2.3 Redis实际应用案例 - **案例分析**: - **社交网络**: 如Twitter使用Redis进行实时消息的...

    数据库技术沙龙ppt:NoSQL应用实践

    NoSQL(Not Only SQL)数据库是一种非关系型数据库管理系统,其设计初衷是为了处理大规模数据存储需求,特别是在大数据和实时Web应用中,NoSQL能够提供更好的可扩展性和灵活性。 #### NoSQL发展背景与动机 NoSQL...

    Redis实战中文

    - **云存储**:云服务环境下,数据存储需要具备高度的可伸缩性和灵活性,Key-Value Store能够很好地适应这种需求。 - **Redis实际应用案例**:包括但不限于实时分析、会话存储、消息队列等应用场景,充分展现了Redis...

    Redis实战《红丸出品》.pdf

    而Key-Value Store通过其简单的设计,可以很好地应对这些挑战。 - **云存储**:随着云计算的发展,Key-Value Store因其分布式特性,非常适合部署在云端,能够实现弹性伸缩,适应不同规模的数据存储需求。 - **Redis...

    redis实战 完整版

    - **优势**: Key-Value存储系统能够很好地支持高并发访问,适用于处理大量用户请求的场景。 ##### 1.2.2 云存储 - **优势**: 提供了灵活的存储解决方案,可以轻松地在云环境中进行水平扩展。 ##### 1.2.3 Redis...

Global site tag (gtag.js) - Google Analytics