码迷,mamicode.com
首页 > 数据库 > 详细

Git演示平台上的iBoxDB NoSQL与MySQL的性能测试

时间:2015-04-22 14:09:24      阅读:185      评论:0      收藏:0      [点我收藏+]

标签:

每隔一段时间就会出现一篇关于数据库性能描述得天花乱坠的文章,经常出现50W QPS,100W QPS这样的大数字,去掉几千字的文字讲解后,核心内容是一台顶级配置的服务器和为测试专做的配置,对于大部分系统根本不会去购买哪台不知哪里才有卖的服务器,大部分开发人员也不会去折腾哪一堆配置,并且改了默认配置往往引入新问题。怎样的数据库测试才是最真实,反映系统实际运行能力?GIT@OSC的演示平台可以作为一个参考,这里写了两段代码,测试并发10个连接,每个连接读10,000个数据在iBoxDB与MySQL上所需要的时间,时间越短,性能越好。

先看MySQL的测试代码 

public Integer call() throws Exception {
    ResultSet rs = c.createStatement()
          executeQuery("select `id`, `value`, `msg` from test");
    int l = 0;
    while (rs.next()) {
      if (rs.getString(3).startsWith(
             Integer.toString(rs.getInt(1)))){
         l += rs.getInt(2);
      }
    }
    return l;
}
这段代码的内容是从test表中读出 id,value,msg, 首先对msg内容进行合法检测,内容符合的把vlaue加到校验码l中。msg的内容创建时是 "id.toString()+一段文字"。

再看iBoxDB的测试代码,因为是NoSQL,代码更易读

public Long call() throws Exception {
     long l = 0;
     for (Map<String, Object> map : c.select("from test")) {
        if (map.get("msg").toString().startsWith(
                 map.get("id").toString())) {
           l += (Long) map.get("value");
         }
     }
     return l;
}
启动GIT@OSC的演示平台后,点击几次测试后, MySQL都在100ms以上,而 iBoxDB 大部分在50ms附近,花费时间越小,性能越好。

技术分享

在演示平台的性能测试可以反映系统实际运行效果,哪些100W QPS的测试结果在当前对99%的系统是不可能达到的。

GIT@OSC的测试代码地址在线演示地址

iBoxDB NoSQL数据库下载地址


Git演示平台上的iBoxDB NoSQL与MySQL的性能测试

标签:

原文地址:http://my.oschina.net/iboxdb/blog/404957

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!