我正在使用MongoDb作为后端的应用程序。我正在使用Java MongoClient与MongoDb进行通信。由于MongoClinet是线程安全的,因此多个线程使用此实例将数据写入mongo。我的示例代码是
BasicDBObject document = new BasicDBObject();
try{
document.append("address", address);
document.append("name", name);
document.append("voterId", voterId);
unProcessedPeopleCollection.insert(document);
} catch (Exception e){
logger.error("Error occured while unProcessedPeopleCollection in Mongo");
logger.error(e);
}
我不希望mongoclient立即插入数据库。我希望它将多个调用组合成单个调用,就像在100或1000个插入调用之后它实际上会在mongo中推送数据。这将有助于我减少每次通话的往返时间。
MongoClient库提供的是否有任何选项,或者如何在编程级别处理它。
答案 0 :(得分:0)
据我所知,MongoClient是不可能的。您可以通过将调用添加到集合(集合,列表等)中来手动对调用进行分组,并尝试在其大小达到100或1000后插入到MongoDB中。