我一直对此感到疑惑,但从未完全理解 32 位机器如何处理超过 4 GB 的RAM。我的意思是,没有更多的地址行了,对吗?
我什至知道在我们的设施中,我们有戴尔数据库服务器,机器可寻址 8 GB RAM 和 32 位版本的SQL Server。是不是类似于EMS内存的20地址线8086,使用了一个旋转内存的窗口?
我在几个网站上看到过关于这个的讨论,所以也许我们可以在这里提出一些明确的问题。
我的 Vista x64 工作站上有 8 GB 内存。我是否需要一个页面文件(即系统属性 > 高级 > 性能设置 > 高级虚拟内存),拥有或没有页面文件是否有益?对稳定性有什么影响?
谢谢
我有一个相对较小的家用 Red Hat Linux 服务器(大约 8 GB RAM)。除了运行一些自制的应用程序来跟踪各种事情之外,我不使用它。在盒子上运行的唯一真实的东西是一个数据库和一个网络服务器。
我注意到,当使用 NMON 和 TOP 等工具检查系统计数器时,系统总可用内存相对较低(大约几百 MB),而数据库和 Web 服务器的活动内存仍然很低(仅总共消耗 3 GB)。即使包括所有其他正在运行的进程,总消耗的内存也小于 4 GB。
为什么 Red Hat Linux 报告的可用内存少于总内存减去运行进程的已用内存总和?
我正在尝试在低内存系统 (150-256Mb) 上运行 tomcat。即使我使用 -Xmx64m(无论如何这应该是默认值)启动 JVM,该进程也会立即占用 200Mb+。
我想知道为什么 JVM 本身需要这么多内存,或者是否有办法调整它?其他 JVM 是否比 sun 低内存消耗更好 - 它们是否与 tomcat 一起使用?
我有一个运行有点慢的 Windows 2003 服务器,其中提交费用和页面文件使用量不断增加,直到我最终重新启动。为了解决这个问题,我需要找出消耗所有内存的原因,这就是最大的谜团所在。
任务管理器的当前统计数据:
Physical Memory (K): 2096400
Commit Charge (K): 5364848
Page file usage: 5.11 GB
Run Code Online (Sandbox Code Playgroud)
好的,让我们打开SysInternals Process Explorer并检查正在运行的所有内容的工作集大小。最大的罪魁祸首是使用 121,980K WS、481,284K VM 大小的 Tomcat 实例。没有任何内容可以解释 5 GB 的提交费用。
下一步:SysInternals pslist : pslist -m,按列拆分输出并计算报告的 61 个进程的列总和。
SUM (Working Set) : 681,484 K
SUM (Private Bytes): 593,424 K
Run Code Online (Sandbox Code Playgroud)
我是否从根本上误解了工具报告的内容?我一直认为操作系统实际上提交的内存比进程映射的全部虚拟内存少得多,假设它实际上不会使用那么多,并且在这里查看 VM 是一条红鲱鱼。
最近有人问我“你知道什么时候决定是使用更多 RAM 还是更多服务器?” (在扩展数据挖掘应用程序的背景下)。
我不知道,那么有什么方法可以决定呢?我对体系结构和缩放的了解很少(我对计算机内存和服务器功能的理解仅限于高级基础知识),因此也非常欢迎了解更多关于这些事情的提示。
我的设置(示例)
我在具有以下规格的 Amazon High CPU Extra Large EC2 实例上运行 Linux:
我有两个大型 MySQL 数据库在 MyISAM 存储引擎上运行。一个是 2GB,另一个是 500MB。我想确保 MySQL 使用尽可能多的 RAM,以最大限度地提高查询速度。我知道有很多 MySQL 内存配置选项,例如key_buffer_size,MyISAM_sort_buffer_size,但我不熟悉优化这些选项。
问题
我试图找到一种从 perfmon 获取可用 RAM 百分比的好方法。我可以获得可用的 Mbytes,但我找不到任何方法来获取服务器上安装的总内存或通过 perfmon 使用的内存。我显然可以在 GB 上发出警报,但我的每台服务器都有不同的总 RAM,所以不是很好的警报。
我理解 % Committed Bytes 的方式是这包括磁盘上的页面文件,所以这不是一个好的指标。
任何帮助,将不胜感激。
我的小型 ec2 实例有 1.7 GB 内存,运行基于 CentOS 的 Amazon AMI,在 Apache 使用过多内存时存在问题。如果你看一下截图,内存使用率将在 90-100%,直到我重新启动 httpd 服务,它会重新开始,增加到 90+%。

我真的很感激有关如何定位问题的一些帮助。这可能是“正常”的 apache 行为,以利用所有可用内存吗?或者是否有我必须追捕的可能泄漏。目前,我对可能发生的事情感到有些困惑。
我们正在使用 Apache MPM prefork,没有 sql 或任何类似的东西——只有 apache。网站在这里。