我们有一个mongodb 2.3.4服务器。 db.currentOp()始终如一地产生:
> db.currentOp()
{ "inprog" : [ ] }
> db.currentOp()
{ "inprog" : [ ] }
> db.currentOp()
{ "inprog" : [ ] }
> db.currentOp()
{ "inprog" : [ ] }
> db.currentOp()
{ "inprog" : [ ] }
表明系统......没有做太多事情。
但是mongostat显示每秒几千次更新:
insert query update delete getmore command flushes mapped vsize res faults locked db idx miss % qr|qw ar|aw netIn netOut conn time
*0 *0 1008 *0 0 1009|0 0 2284g 4570g 23.3g 0 xxxxx:24.7% 0 0|0 0|0 1m 106k 75 19:19:43
*0 *0 982 *0 0 983|0 0 2284g 4570g 23.3g 0 xxxxx:24.6% 0 0|0 0|0 1m 103k 75 19:19:44
*0 13 1002 *0 0 1009|0 0 2284g 4570g 23.3g 0 xxxxx:24.6% 0 0|0 0|1 1m 113k 76 19:19:45
*0 3 1019 *0 0 1022|0 0 2284g 4570g 23.3g 0 xxxxx:24.9% 0 0|0 0|0 1m 109k 75 19:19:46
机器上没有复制。此外,日志中会显示一些更新查询,但不会接近每秒数百个。
有什么可以解释这种差异?
[更新:db.currentOp(true)显示大量看似无效但未等待锁定的操作。这些是在mongostat中显示的吗?他们可以做什么?]