Windows 2008 和 2012 服务器版本的最低内存使用量是多少?
我指的是所有与操作系统相关的事物。该机器将是一台带有专用 Web 服务器软件的 VM,它不依赖于操作系统(即没有 IIS、没有域、本地数据库最少),也不会占用太多内存(少于 50 MB),尽管 CPU 使用率在负载下偶尔会飙升。
我之所以问这个问题,是因为有些托管服务是按 RAM 的 MB 收费的,而对于这种低开销的服务器,所有 RAM 的使用基本上都由空闲的 OS 服务使用。因此,任何可以降低基准成本的方法都是很好的。
2008 是否是降低内存使用率的更好起点?2012 是否可以强制降低?
关于以上内容有什么指示吗?
附言:通过停止所有不必要的服务、禁用 COMPort、软盘和 CDROM 设备以及使用 SetSystemFileCacheSize() API 最小化缓存文件大小,我已成功将标准 Windows 2008 的物理空间降至 192 MB(当没有活动的 RDP 会话时)。
答案1
我刚刚在虚拟机中全新安装了 Web Server 2008R2 Core。它目前占用的 RAM 正好是 253MB。我目前无法访问 Server 2012 .iso 进行测试。
Server Core 的问题在于没有 GUI,这减少了 RAM(和攻击面),但您必须非常熟练地管理它。由于 Explorer 无法运行,这可能会使您的 Web 服务器软件(无论您选择使用什么)难以使用或无法使用。使用 IIS 或任何其他 Web 服务器会使 RAM 显着增加 - 我认为最低安装需要 256MB RAM,而“可用”服务器需要 512MB RAM - 如果您正在运行某种数据库,则需要更多。
当然,使用一些 Linux 变体(例如 CentOS)来运行 Web 服务器可能更好。当我获得第一个 VPS 时,我选择了 Windows 而不是 Linux,因为我更喜欢使用 Windows,而且我支付的 Windows 许可证费用被我花费在 CentOS 上的时间和服务器受损风险所抵消。
输入完这些之后我刚刚回到虚拟机,它已经上升到 272MB。
答案2
根据我的经验,对于 Windows 系统来说,这两种操作系统的使用率都相当低。更小的安装占用空间是使用核心安装模式,这样就不需要实际的 Windows UI 层了,但这可能无法很好地与您的第三方 Web 服务器配合使用。
但实际上,如果您计划使用非 IIS Web 服务器,那么真的没有理由不使用 *NIX OS 并在这些机器上运行 Web 服务器。Linux 虚拟机通常比 Windows 虚拟机便宜,因为每小时成本包括 Windows 许可。
不管这些,您只需要了解每个操作系统允许的最小 RAM 量,然后确定您的 Web 服务器和其他应用程序的最小 RAM 量。当然,如果您使用最小 RAM 量,那么您将看到整体性能低下甚至糟糕。
答案3
我刚刚在 IIS 上使用了一个装有 2012 Server Core、SQL-2008 R2 和几个 ASP.NET 站点的 VM,并将 RAM 限制为 256MB,它仍然可以运行,但速度明显变慢了。
我会用您的应用程序设置一个测试虚拟机,然后针对不同数量的 RAM 运行一些性能和扩展测试。
我也会推荐核心选项,尽管我认为内存占用不会低很多。即使在全 GUI 服务器上,Windows 资源管理器通常也不会加载。但是当您登录时,Explorer 需要的内存比 cmd.exe 多。
Server 2012 core 的存储空间比 2008 R2 core 大,但我认为内存占用差不多。不过我没有确切的数字。
答案4
我曾在 2GB RAM 范围内运行过 Windows 2008 实用程序虚拟机。您没有看到您的情况所需的 RAM 比率是多少,或者您的目标是多少。因此 2GB 是安全的。
您可以尝试在本地虚拟机中分配较低的 RAM 来测试您的具体情况。