關注我的blog獲取最新內容
最近接觸了mongodb,用兩臺物理機部署了3個centos7-vm,分別在沒臺機器上部署了route和config。其中shard每臺vm部署了一個,并沒有配置復制集。

節(jié)點部署
在性能驗證的時候發(fā)現(xiàn)在不對collection開啟shard的時候批量插入的性能大概在25000條/s。而開啟shard之后批量插入的性能下降到了5000條/s。
。。。。
在經過一番排查之后再Stack Overflow上找到了這篇問答
其中一位回答者提到了可能是collection.bulkWrite(list);導致的。
所以想到了問題可能出在客戶端上。
我用的是springboot集成的MongoTemplate。
public void batchInsert(List<Szgp> list){
mongoTemplate.insert(list,Szgp.class);
}
修改為
public void batchInsert(List<Szgp> list){
BulkOperations ops = mongoTemplate.bulkOps(BulkOperations.BulkMode.UNORDERED, Szgp.class);
ops.insert(list);
ops.execute();
}
問題得以解決