欢迎来到人人文库网! | 帮助中心 人人文档353.99pj.net美如初恋!
人人文库网

tyc173.com:Windows2008系统缓存耗尽导致服务器死机问题的解决办法

2020-01-31 14:20 | 人气:368
分享至:

本文地址:http://353.99pj.net/i-261923.html
文章摘要:tyc173.com,安再炫头也没回就知道自己实力可是堪比十名半仙sun84.com、sbc91.com、sblive20.com这小黑熊之前也见到过。

不知道从什么时候开始,网上开始流传一种说法,WS2008系统自带缓存有Bug,然后可能导致服务器内存耗尽而死机!然后网上就出了一些工具解决这些问题!

下面是来自微软官方的资料,并已证实Windows2008系统确实存在该问题,但在Windows 7和Windows Server 2008r2版本中已经得到更新,“可以解决已经发现的问题”。

链接:http://www.99pj.net/289/zh-cn/kb/976618

下面是微软官方资料的一些中文解释。

症状:

可用内存是几乎耗尽。

系统文件缓存耗用大量物理 RAM。

存在对磁盘持续且大量的缓存读取请求。

原因:

在 Microsoft Windows 操作系统中的内存管理使用基于请求的算法。如果任何进程请求,并使用大量内存,进程的工作集 (在物理内存中的内存页面数) 都会增大。如果这些请求持续且未加抑制,进程的工作集将会增长至占用所有的物理内存。在此情况下,其他所有进程的工作集调出到硬盘。这种行为降低了应用程序和服务的性能,因为内存页是连续写入硬盘和从硬盘读取的。

这种行为同样适用于系统文件缓存的工作集。如果这些请求是连续的且不受控制的,则该进程的工作集将继续增长,直到消耗尽所有物理内存。在这种情况下,所有其他进程的工作集分页到硬盘,被占用的物理内存量不可用于其他进程。

在 32 位 Windows 操作系统版本早于 Windows Vista,系统文件缓存的工作集是有理论内存限制为小于 1 千兆字节 (GB)。

在 32 位版本的 Windows Vista 操作系统,动态分配核心资源。

在 64 位版本的 Windows 操作系统,虚拟地址范围通常通常超过了物理大小。

解决方法:

若要变通解决此问题,请使用GetSystemFileCacheSize API 函数和SetSystemFileCacheSize API 函数来设置系统文件缓存的工作集的大小最大值或最小值。

Microsoft Windows 动态缓存服务是演示如何使用这些 Api 来将这一问题的影响降至最低的一种策略的示例服务。

安装和使用 Microsoft 动态缓存服务不会排除对 Microsoft Windows 的支持。

在 Windows 7 和 Windows Server 2008 R2 操作系统的内存管理算法已更新,可以解决许多早期Windows版本中发现的问题。

如何确定您的系统是否受影响?

若要确定您的系统是否受此问题,请安装 SysInternals RamMap 工具。

微软下载:http://www.2345505.com/436/en-us/sysinternals/ff700229

运行该工具时,选择使用计数选项。这将显示多个列,以显示当前模式的内存使用情况。单击Active列进行排序使用字节数,并注意总使用量(Total)。如果排列在顶部的使用计数是”Metafile”,并使用了大部分可用的内存。或者您遇到”症状”一节中描述的系统文件缓存问题。可以对其进行如此验证: 即通过使用性能监视器监视的Memory\System Cache Resident Bytes计数器并查看随着时间的推移不断增长的缓存用量。

如果在性能监视器中的Memory\System Cache Resident Bytes计数器显示一段时间的上升趋势,计算机如图三所示出现问题

这篇文章中的信息适用于:

Microsoft Windows XP Professional x64 Edition

Windows Vista Home Basic

Windows Vista Home Premium

Windows Vista Business

Windows Vista Enterprise

Windows Vista Ultimate

Windows Vista Home Basic 64-bit edition

Windows Vista Home Premium 64-bit edition

Windows Vista Enterprise 64-bit edition

Windows Vista Ultimate 64-bit edition

Microsoft Windows Server 2003 R2 Datacenter Edition (64-Bit x86)

Microsoft Windows Server 2003 R2 Enterprise Edition (64-Bit x86)

Microsoft Windows Server 2003 R2 Standard Edition (64-Bit x86)

Microsoft Windows Server 2003, Datacenter x64 Edition

Microsoft Windows Server 2003, Enterprise x64 Edition

Microsoft Windows Server 2003, Standard x64 Edition

Microsoft Windows Server 2003, Datacenter Edition for Itanium-Based Systems

Microsoft Windows Server 2003, Enterprise Edition for Itanium-based Systems

Windows Server 2008 Datacenter without Hyper-V

Windows Server 2008 Enterprise without Hyper-V

Windows Server 2008 Standard without Hyper-V

Windows Server 2008 Datacenter

Windows Server 2008 Enterprise

Windows Server 2008 Standard

Windows Server 2008 for Itanium-Based Systems

Windows Server 2008 R2 Datacenter

Windows Server 2008 R2 Enterprise

Windows Server 2008 R2 Service Pack 1

Windows Server 2008 R2 Standard

结论:

1、Windows 2008自身缓存问题确实存在,但是2008 r2版本已有更新,可解决一部分问题,但是可能还会有未知问题;

2、使用微软官方API可以控制缓存大小,以及查询当前缓存大小;只是不知道限制缓存大小会有什么后果;

3、Windows 2012没这种问题;

4、这个问题可以算是微软的Bug,但也需要有一些“不严谨的程序”来触发,才会产生相应症状,所以也不完全是微软的问题;

关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

网站客服QQ:2846424093    人人文档上传用户QQ群:460291265   

copyright@ 2020-2023  353.99pj.net 人人文库版权所有   联系电话:0512-65154990

备案号:苏ICP备12009002号-5  经营许可证:苏B2-20200052  苏公网安备:32050602011097号





收起
展开
申博在线现金网 672msc.com 大众棋牌城网址 yh17.com tyc788.com
31sblive.com 00gvb.net sun757.com 883sb.com am36.com
ag91.com 871msc.com 196sun.com 735tyc.com tyc616.com
百盛娱乐网下载 sun568.com 申博太阳开户优惠 336sb.com sblive84.com