memcachedb的性能测试

memcachedb是新浪工程师开发的持久的分布式存储系统。前端用memcache作缓存,后端用Berkeley DB做持久存储,支持事务。存储方式简单,只支持key-value存取方式,所以效率非常高。适合存储高流量网站的点击率、浏览量等。

memcachedb的官网: http://memcachedb.org/


测试环境

Memachedb serever安装在linux测试服务器(centOS系统)

客户端测试程序用java,运行在本地PC机。


Key:是md5 32位

Value:ArrayList{745466546,123445645,156465464,314464645,789796546,654657878,464898779}

写的测试结果(单位是毫秒):

l          1000次

测试总数:1000

总耗时间:1296.0

平均一个所耗时间:1.296

l          10000次

测试总数:10000

总耗时间:8359.0

平均一个所耗时间:0.8359



读的测试结果(db里有10000个对象):

l          1000次

  测试总数:1000

总耗时间:1469.0

平均一个所耗时间:1.469

l          10000次

测试总数:10000

总耗时间:13266.0

平均一个所耗时间:1.3266


从结果来看,在java下写的效率比读的效率要稍微高点,起初猜测写是异步的,但是同事看了源码,写是同步的,没有消息队列,是直接写到dbd的。他用php测试了,写和读分别是0.3毫米/个和0.2毫秒/个。
由此可判断读比写效率低,并不是由Memachedb引起的。难道是java的凡需反序列化的效率比序列化的效率低。
另我对Berkeley DB的java版本测试了下,效率不是很理想,写大概是22ms/个。



你可能感兴趣的:(linux,PHP,centos,浏览器)