服务器的 RAM 是否“过多”?RAM 是否有最佳水平,还是越多越好?

服务器的 RAM 是否“过多”?RAM 是否有最佳水平,还是越多越好?

最近,我们的服务器管理员告诉我,我们订购的新服务器有 140GB 的 RAM,但“内存太多”,当 RAM 超过 80GB 时,服务器就开始出现问题,因为这是“最佳容量”。他是在吹牛,还是 RAM 超过一定水平真的存在性能问题?我明白这种说法 - 操作系统需要管理更多,等等 - 但这是合理的吗,还是额外的喘息空间足以弥补管理不足?

我并不是在问“我会全部用完吗”(这是一个有几十个实例的 SQL Server 集群,所以我怀疑我会用完,但这与我的问题无关),而是在问太多是否会引起问题。我一直认为越多越好,但也许这是有限制的。

答案1

虽然是特殊情况,但对于“太多”还是存在一些阈值。

在 32 位系统中,PAE 允许您访问超过 4GB 的内存。32 位计算机的理论最大值是 64GB RAM,这反映了 PAE 为内存地址提供的额外 4 位。64GB 小于 80GB。

从那里我们得到了特定于处理器的问题。64 位处理器目前在内部使用 40 到 48 位来寻址内存,这导致最大内存限制在 1TB 到 256TB 之间。两者都远远超过 80GB。

除非他有明确的理由SQL 服务器无法处理那么多内存,但基础操作系统和硬件可以轻松做到这一点。

答案2

他是在胡说八道——如果他说的是 4GB 而你使用的是 32 位操作系统,那么他可能有一半的论据,但不,80GB 只是他凭空捏造的一个数字。

显然,如果内存购买不当,就会出现一些问题,例如,较大的 DIMM 的价格通常是半尺寸版本的两倍多(即 16GB DIMM 的价格是 8GB DIMM 的两倍多),并且如果使用不正确的内存数量/大小/布局,机器的速度可能会大大降低,但速度仍然会很快。当然,内存越多,损坏的可能性就越大,但我相信您会对该系统感到满意,因为它满足了您的要求。

答案3

抱歉,但这些答案大部分都是错误的。事实上,内存越多,运行速度越慢。对于有 18 个插槽的 HP 服务器(如 G7),填满所有 18 个插槽会导致内存以 800 而不是 1333 的速度运行。请参阅此处了解一些规格:

http://www8.hp.com/h20195/v2/GetHTML.aspx?docname=c04286665

(当然,单击“记忆”。)

12 个插槽的典型内存配置为 48G(全部 4)、72G(8 和 4)、96G(全部 8)等... 当您说“140G”时,我假设您实际上指的是 144G,这很可能是 18 个插槽全部 8G。这实际上会降低您的速度。

现在,根据我所做的研究,内存速度较慢似乎不会影响很多应用程序,但已知会影响数据库应用程序。在这种情况下,你说它适用于 SQL 集群,所以是的,对于它来说,过多的 RAM 可能会降低你的速度。

您交谈过的服务器管理员可能从实际经验中知道这一点,但不知道确切的技术原因。

希望有帮助,

—乔迪—

答案4

我发现至少有一种情况会导致内存过多。诚然,这是软件限制,而不是硬件限制。

由于压缩对象偏移,Java 应用程序(如 ElasticSearch)在使用超过 32GB 的 RAM 时会受到影响。

附加信息:

http://www.elasticsearch.org/guide/en/elasticsearch/guide/current/heap-sizing.html

相关内容