这几天听说了memcachedb
memcachedb故名思义就是 memcached + bdb,是基于memcached Socket层和berkeley-db存储层结构的实现, 是新浪互动社区技术团队2007年的一项重大的技术成果,现在应用于新浪互动社区多个产品线中,其中包括新浪博客等重头产品。能够实现任意memcache api的调用、数据实时落地以及主辅实时备份。
初步感觉用处不大,无非就是利用memcache协议的一个db,性能应该不会很高。如果有分布式需要用手工分数据库的方法也可以实现。但看了介绍
http://blog.csdn.net/simonlsy/archive/2008/01/07/2027933.aspx说性能可以达到读写5000次/秒,觉得还是有它的价值。所以简单测试了一下
1. 环境
OS: Linux, Ubuntu 7.04 64-bit
Memory: 4G
CPU: Intel(R) Pentium(R) D CPU 2.66GHz
SCSI DISK, ext3 file system
libevent 1.3e
Memcached 1.2.4
Berkeley DB 4.6.21
Java 1.6.0
memcachedb 0.1.1 安装方法
http://blog.csdn.net/simonlsy/
2. 测试方法
client/server在同一机上,使用ethernet interface连接, 不是localhost
本Linux同时在作 ADSL route gateway,可能会对测试造成小量影响。
JAVA CLIENT, 使用3线程
Key: 数字,1~100万
数据:100字节字符串
3. 测试结果
Memcached 写速度
平均速度: 16222 次/秒
最大速度 18799 次/秒
Memcached 读速度
平均速度: 20971 次/秒
最大速度 22497 次/秒
Memcachedb 写速度
平均速度: 8958 次/秒
最大速度 10480 次/秒
Memcachedb 读速度
平均速度: 6871 次/秒
最大速度 12542 次/秒
由于硬件环境,网络环境,线程数,编程语言不同,可能测试结果差别也很大,本测试结果只起相对参考作用。即比较memcached/memcachedb在相同环境下的性能区别。