db . system . profile . find({ ns canned:{“$ gt“:1 },ns:{“$ ne“:“XXX . system . profile“} },{op:1,ns:1,query:1,millis:1,N scanned: 1,reslen: 1}),您可以找出掃描了多行的和沒有索引的。請記住,索引始終是mongoDB最大的問題。
索引會帶來更多的問題。它占用了大量內存和cpu。這也是更新越來越慢的原因之壹。如果更新頻繁且插入次數不多,請使用_id作為主鍵直接在業務中拼湊_id並在查詢中直接使用_id。
更新時,不能直接更新整個bson,而是在本地更新字段,因此流量會很小。
檢查瓶頸是io、內存還是cpu。如果數據量或索引量超過物理內存的大小,mongoDB的效率將降低壹個數量級。