问题已经解决。有用机器是numa架构,因此在启动mongod进程的时候加上:numactl --interleave=all mongodb官网上有如下说明,可供参考: Linux, NUMA and MongoDB tend not to work well together. If you are running MongoDB on numa hardware, we recommend turning it off (running with an interleave memory policy). Problems will manifest in strange ways, such as massive slow downs for periods of time or high system cpu time.
numactl To turn off NUMA, start mongod with
proc settings
You can change zone_reclaim_mode without restarting mongod. For more information on this setting seehttp://www.kernel.org/doc/Documentation/sysctl/vm.txt.