`
cloudeagle_bupt
  • 浏览: 537720 次
文章分类
社区版块
存档分类
最新评论

关于MongoDB远程取数据

 
阅读更多

使用MongoDB中遇到如下问题:


<span style="font-size:18px;">mongo = new Mongo(IncBspConstants.MONGO_MASTER, 27017);
			verticesNodeDB = mongo.getDB(IncBspConstants.VERTICES_DB); 
			currentVerticesTable = verticesNodeDB.getCollection(currentVerticesFile); </span>
<span style="font-size:18px;">                        对表中数据操作。。。。。</span>

blaaaaa


这里MongoDb需要远程去取另外一台机器上面的数据,这里遇到的一个奇怪的问题就是,经常取不到数据,返回的表是空的,但是当我Debug的时候,发现表又能取到数据,让人百思不得其解。

后来猜是原因可能是远程取表的需要时间,运行时速度很快,会导致远程数据(另外一个线程)还没取到时,就直接执行对表中数据的操作,这里可能是因为MongdoDB没有互斥机制。。。


解决办法是当前线程sleep(1000)或者多久,等远程数据取到后,再执行就行了。。。。。


真是奇葩问题啊!!!!!!!!!!

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics