我的记忆在哪里!所有ram都在Windows Server 2016下运行

时间:2017-05-16 00:07:31

标签: windows-server-2016

我正在检查具有32GB内存的服务器,并且我看到99%的内存使用率。

该机器与IIS,MongoDB和ElasticSearch一起使用。

没有一个过程似乎那么大。最大的是MongoDB,大约1GB。

所以,我关闭了所有内容......现在内存使用率为88%

重启后,所有服务都在运行,内存使用率为23%

88% memory usage without large processes

Largest processes

这些是系统中最大的进程,一切都被关闭。正如你所看到的,一切都非常小,但大部分公羊都没有了。

如何追踪吃掉所有公羊的食物?我试过过程资源管理器,但它没有给我任何更多有用的信息。

3 个答案:

答案 0 :(得分:0)

尝试从sysinternals使用RAMMAP,它将为您提供有关内存使用情况的更多详细信息。例如metafile。

答案 1 :(得分:0)

Elasticsearch通常有很多可用的RAM来缓存搜索结果聚合。这是为了避免内存交换。在LINUX服务器中这是非常明显且可观察的。因此,建议在生产量大的生产环境中的单独服务器中使用ES。

因此,请尝试一次检查缓存。

答案 2 :(得分:0)

看看分配给Elasticsearch的堆大小。您可以检查-Xms文件中-Xmxjvm.options的值。通常,将50%的物理RAM分配给ES,并且将bootstrap.memory_lock设置为true,它将锁定RAM。理想情况下,如另一个答案所述,Elasticsearch应该在自己的计算机上运行。