读书人

关于MongoDB java Driver(2.6.5) BUG引

发布时间: 2012-07-05 07:59:18 作者: rapoo

关于MongoDB java Driver(2.6.5) BUG引申的话题
最近在一直搞Mongodb的主从和集群,从Mongodb官网(http://www.mongodb.org)宕下来Mongodb1.8和最新版的JavaDriver 2.6.5,Mongodb主从可以从这里知晓http://www.mongodb.org/display/DOCS/Replication

Master/Slaver模式由于不能自动切换,所以官方也推荐使用ReplicaSet模式

待主从配置成功后,我们接下来要考虑的就是如何在java端调用mongodb(http://api.mongodb.org/java/2.6.5/)

从图片中我们可以看到Mongodb java driver存在帮我们封装了多个IP和端口的参数方法~

接下来可以参考api中的demo,出现了Rare case where master=null...(如果你调用了slaveOk方法),否则出现Can't find a master

翻了半天源码也没理清头绪,索性将jar包换成了2.4的,发现结果一切正常。

这是https://github.com/mongodb/mongo-java-driver/wiki/Release-Notes以前的版本升级说明

之前在用mongodb做统计,策划同学的意思是只需用包括昨日以前的数据,但个人感觉做实时也没问题,由于需求

相对复杂,于是选择了mongodb的mapReduce方案,结果出现两个问题~

1)开发环境使用1.6线上环境使用1.8,1.8的Mongodb不支持1.6的语法,导致出错
2)单台服务器做mapReduce性能非常差,导致了全表搜索直接影响线上业务(暂时没有备份库)

后来只有换套方案才满足了实时的需求~

以上一些事情引申的话题值得思考

1) 作为程序员使用不熟悉的技术之前,有没有必要对技术做相关的培训和学习(这里指的是技术实现的大概原理,不单纯是使用)?

2) 当我们做产品的时候,向下兼容问题是不是需要单独拿出来测试?

3) 讨论下方案在项目和产品中的位置~

读书人网 >其他数据库

热点推荐