内存不足错误 - mongodb 3.4 - Windows Server 2012 R2

sbo*_*rpo 8 mongodb

我正在使用默认存储引擎(有线老虎)在Windows Server 2012 R2上运行3.4版本的mongo.mongod作为Windows服务运行.

不幸的是,该服务不时会因"内存不足"错误而崩溃.这是来自mongolog:

2017-05-14T22:34:15.888+0000 I CONTROL  [ftdc] mongod.exe    
...\src\mongo\util\stacktrace_windows.cpp(239)  
mongo::printStackTrace+0x43
2017-05-14T22:34:15.888+0000 I CONTROL  [ftdc] mongod.exe                                                    
???
2017-05-14T22:34:15.896+0000 I CONTROL  [ftdc] mongod.exe    
...\src\mongo\util\allocator.cpp(51)            ???
2017-05-14T22:34:15.896+0000 I CONTROL  [ftdc] mongod.exe                                                    
???
2017-05-14T22:34:15.896+0000 I CONTROL  [ftdc] mongod.exe                                                    
???
2017-05-14T22:34:15.896+0000 I CONTROL  [ftdc] mongod.exe                                                    
???
2017-05-14T22:34:15.896+0000 I CONTROL  [ftdc] mongod.exe                                                    
???
2017-05-14T22:34:15.896+0000 I CONTROL  [ftdc] mongod.exe                                                    
???
2017-05-14T22:34:15.896+0000 I CONTROL  [ftdc] mongod.exe                                                    
???
2017-05-14T22:34:15.896+0000 I CONTROL  [ftdc] mongod.exe                                                    
???
2017-05-14T22:34:15.902+0000 I CONTROL  [ftdc] ucrtbase.DLL                                                  
crt_at_quick_exit+0x7d
2017-05-14T22:34:15.902+0000 I CONTROL  [ftdc] KERNEL32.DLL                                                  
BaseThreadInitThunk+0x22
2017-05-14T22:34:15.902+0000 F -        [ftdc] out of memory.
Run Code Online (Sandbox Code Playgroud)

经过一些研究,人们建议限制内存使用量:

  1. 使用WSRM(https://www.captaincodeman.com/2011/02/27/limit-mongodb-memory-use-windows)不幸的是,此功能目前在Windows 2012服务器上不可用.
  2. 在特殊容器或虚拟机(Heper-V/Vmware ...)中运行mongod以限制其资源 - 我猜想probelm将在虚拟机中返回 - 该进程将在那里内存不足.
  3. 限制WiredTiger缓存大小(https://docs.mongodb.com/manual/faq/storage/#to-what-size-should--set-the-wiredtiger-cache) - 我已经将大小减小到1 Gb并没有帮助.除此之外,它只限制缓存,mongod进程本身可以以其他方式使用RAM.

- 我看到在Linux版本中有"无限制"标志,可以设置MongoDB:内存不足

- Windows版本中有类似的配置吗?

- 增加页面文件大小可以帮忙吗?

- 其他建议?

谢谢!