非常郁闷,求windows2003服务器运行5、6天后磁盘性能突然低下的原因

yjxp 2009-11-10 09:13:11
各位大哥,小弟又来问问题了,真的解决不了才来问的

我的台服务器,发现奇怪问题,服务器运行4-6天左右,磁盘性能就会低下,经过一个月观察,基本情况是:

1、服务器重启后正常,在“管理工具”->“性能”中Avg. Disk Queue Length值平均约为0.1

2、服务器运行几天后,磁盘性能明显低下,Avg. Disk Queue Length值平均达到4左右,最高值达到8,服务器上ACCESS网站运行速度极慢。

3、发现IIS和磁盘性能严重有关,当关闭IIS后,Avg. Disk Queue Length值立马下降到0.0x,开启IIS后马上反弹,但似乎和某个网站(以前经常碰到某个网站ACCESS库巨大,然后引起磁盘性能下降)无关,因为不管关闭那些网站(比如把所有ACCESS超过30M的网站关闭,或者把所有生成日志容量大的网站关闭都没有效果)。

4、重启IIS没效果(重启后Avg. Disk Queue Length值马上到4、6)必须重启整台服务器有效(重启后Avg. Disk Queue Length值只有0.1)

5、出现磁盘性能低下并不是累积的,比如今天Avg. Disk Queue Length值是0.1明天是0.2后天是0.3,而似乎是一下子就增长上来的

真的是非常郁闷无解的问题,不知道谁碰到过,有没有解决办法,小弟先谢过了。

另:这台服务器配制:s3000ah主板、二块硬盘做RAID 1,WINDOWS 2003操作系统,安装IIS、SQL SERVER、SERV-U等常用软件,是台WEB为主的服务器,上有近百个网站在运行。

我对另外一台服务器上观察似乎也发现这个现象,不过另一台磁盘性能低下后Avg. Disk Queue Length值只有1左右,实际网站访问并不影响
...全文
609 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
yjxp 2009-12-07
  • 打赏
  • 举报
回复
基本上确定是360干的,停用360就好了,我又一台新电脑发现这问题,然后发现是安装360过后五六天
yjxp 2009-11-11
  • 打赏
  • 举报
回复
虚拟主机,数据库不是由我决定的,不过服务器上装有SQL的,几个大的都用SQL,呵呵

先看看看,如果好了或者没好我都会在这里留言
yjxp 2009-11-10
  • 打赏
  • 举报
回复
安全应该安全的,所有网站都是独立应用程序池,硬防当然有的,呵呵,感觉不像是黑客攻击啥的
flyfranker 2009-11-10
  • 打赏
  • 举报
回复
先解决安全问题吧,硬件防火墙+Mcafee,IIS安全性很差的。
yjxp 2009-11-10
  • 打赏
  • 举报
回复
另补充,内存是4G的,实际使用反正还不到,没有用虚拟内存,进程中没有发现有特殊的未知进程
xman_78tom 2009-11-10
  • 打赏
  • 举报
回复
这样设置确实可以在一定程度上提高文件系统性能。

但是如果可能的话,还是应该使用 raid5 阵列和 SQL SERVER。
yjxp 2009-11-10
  • 打赏
  • 举报
回复
谢谢xman_78tom大哥执心答复

不过我4G内存的服务器一直加着/3g的,8G内存的服务器一直加着/PAE

我刚才停用了360(因为这个问题最近三十天才出现,最新印象改动服务器就装过360了),然后依据很早的一个文章:

NTFS 文件系统设置

HKLM\System\CurrentControlSet\Control\FileSystem\ 下的 NtfsDisableLastAccessUpdate (REG_DWORD)1。

通过禁止更新最后一次访问的文件或目录的日期和时间戳记,这个针对整个系统的开关参数会降低磁盘I/O负载和缩短延迟。默认情况下本键不存在,因此需要额外添加。如果操作包含数千个目录的大型数据集(或者大量主机),禁用更新的效果十分明显。如果只需要保留信息Web供Web管理使用,我们建议用户使用IIS日志代替它。

警告:某些应用程序(例如增量备份工具)需要使用这些更新信息,如果没有这些信息,它们将无法正常工作。


进行了这个设置(我之前有台服务器曾做过这个设置很早的事了,最后查下来是一个ACCESS网站大引起的,那个ACCESS有几百M,HOHO)
xman_78tom 2009-11-10
  • 打赏
  • 举报
回复
看来是可用内存空间不够导致磁盘瓶颈。

我忽略了,正常情况下,应用程序虽然有 4G 内存访问空间(2G 用户,2G 内核),但最多可用 2G 内存。因此建议你打开 WINDOWS 2003 中的 /3G 开关(在 boot.ini里加 /3GB,重启系统),这样应用程序便可以使用 3G 的内存了。
yjxp 2009-11-10
  • 打赏
  • 举报
回复
好的,我先观察一下,不过我发现Memory: Page/Sec的值好象很高(平均有26,我记得Avg.Disk Queue Length 这个值高上去的时候,Memory: Page/Sec值也是一起高上去的)

Disk Time 现在是正常的,不过我估计Avg.Disk Queue Length 高了这个也应该会高吧
xman_78tom 2009-11-10
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 yjxp 的回复:]
Memory: Available Bytes 的正常值是多少,我看了一下服务器上是:1700000000左右,另有Available MBytes值是1666左右
[/Quote]
从上面看,可用内存空间正常。建议楼主开启虚拟内存后与 PhysicalDisk:Avg.Disk Queue Length 一起,跟踪一下 Memory: Page/Sec(正常值在 0-20 之间),Processor:%Processor Time (正常值应该长时间低于 90), PhysicalDisk:%Disk Time (正常值应低于 90)。看看在 Avg.Disk Queue Length 高于 2 时,这些计数器的值。如果没有异常,则说明性能瓶颈在于硬盘。

说实话,使用 ACCESS 并不能充分的发挥服务器的性能,在事务频繁的环境中会拖累整个系统的性能。就像楼主遇到的一样,access 并不能将尽可能多的数据缓存到内存中,以减少对磁盘的物理读写。如果可能的话,建议楼主使用 sql server,mysql 这些真正的数据库服务。
yjxp 2009-11-10
  • 打赏
  • 举报
回复
Memory: Available Bytes 的正常值是多少,我看了一下服务器上是:1700000000左右,另有Available MBytes值是1666左右
yjxp 2009-11-10
  • 打赏
  • 举报
回复
我设了虚拟内存的,只不过系统没有用,我设了200-2048M虚拟内存,但系统实际并没有使用

我可以试试在系统再次增加变慢时改成系统自动分配虚拟内存好了。
microsofttyc 2009-11-10
  • 打赏
  • 举报
回复
同意楼上两位大哥的意见
xman_78tom 2009-11-10
  • 打赏
  • 举报
回复
在磁盘繁忙时,Memory: Available Bytes 是否会过低 ?如果是这样建议打开虚拟内存,这样系统会根据需要保留足够的可用物理内存空间,从不必频繁的读取磁盘。




就是just4 2009-11-10
  • 打赏
  • 举报
回复
没有用虚拟内存?

碰到不设虚拟内存时,系统运行速度超慢的
应该来说,不管物理内存多大,实际win2k3 ent最大也才支持4G,都应该配置合理的虚拟内存的,

像lz服务这么多的情况,似乎更应该设置合理的缓存才是
4G地址空间不能算多的,
何况OS正是基于多级存储才设置相应的缓冲的,试想下,磁盘速度与内存速度相差有多大呢???内存与cpu速度又相差多大呢??

建议,lz检查几个缓存的地方,cache,虚存,还有磁盘高速缓存是否开启?
既是怀疑磁盘I/O性能的问题,用相应的工具监控、分析,
声明,系统自带的性能监视器从没用过,

6,873

社区成员

发帖
与我相关
我的任务
社区描述
Windows 2016/2012/2008/2003/2000/NT
社区管理员
  • Windows Server社区
  • qishine
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧