AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 56121
Accepted
windyjonas
windyjonas
Asked: 2009-08-20 06:55:29 +0800 CST2009-08-20 06:55:29 +0800 CST 2009-08-20 06:55:29 +0800 CST

由 Registry 发起的 I/O 操作不可恢复地失败

  • 772

每隔 10 秒左右,我们的两个 Web 服务器(windows server 2003,运行 iis6)都会在事件日志中报告相同的错误。

> Event Type:   Error Event
> Source:   Application Popup Event
> Category: None Event ID:  333
> Date:     2009-08-18 Time:        22:04:06
> User:     N/A Computer:   DFS273
> Description: An I/O operation
> initiated by the Registry failed
> unrecoverably. The Registry could not
> read in, or write out, or flush, one
> of the files that contain the system's
> image of the Registry.
> 
> For more information, see Help and
> Support Center at
> http://go.microsoft.com/fwlink/events.asp.
> Data: 0000: 00 00 00 00 01 00 6c 00  
> ......l. 0008: 00 00 00 00 4d 01 00 c0
> ....M..À 0010: 00 00 00 00 4d 01 00 c0
> ....M..À 0018: 00 00 00 00 00 00 00 00
> ........ 0020: 00 00 00 00 00 00 00 00
> ........

我找不到任何可能导致此类错误的信息。CPU 在 90-100% 时非常繁忙,但几乎有 1 GB 的未使用 RAM。

windows-server-2003 iis iis-6 low-memory windows-registry
  • 4 4 个回答
  • 66818 Views

4 个回答

  • Voted
  1. yanglei
    2009-10-27T08:52:58+08:002009-10-27T08:52:58+08:00

    下面是我上周遇到的一个真实案例。

    症状是一样的:在系统事件中记录了几个“由注册表启动的 I/O 操作无法恢复地失败”事件。此外,一个应用程序在应用程序事件中报告“创建进程失败”。由于 CreateProcess() 函数很少失败,因此该事件的出现是系统资源耗尽的良好指示。

    事实上,我发现了一个“之前的关机是意外的”事件,这实际上意味着 Windows 在关机时未能清除某些时间戳。(http://support.microsoft.com/kb/950323)操作系统甚至没有有机会更新注册表中的值!这怎么可能发生?不难猜测 Windows 正在泄漏非分页或分页池内存。

    所以我添加了两个计数器:非分页池字节和分页池字节以及内核对象计数器,以防句柄泄漏。不出所料,2天后系统崩溃了,如下图所示,Paged Pool size从2009-10-24 09:28一直增长到2009-10-26 23:26,此时系统崩溃,paged pool size接近360MB . 我使用 Procexp 来获得分页池的限制,这确实是 360MB。

    最后一步是找出泄漏的驱动程序,Poolmon ( http://technet.microsoft.com/en-us/library/cc737099(WS.10).aspx ) 可用于监控详细的 Paged Pool 和 Non-分页池信息。

    替代文字

    替代文字

    • 4
  2. Best Answer
    dmoisan
    2009-08-21T11:36:21+08:002009-08-21T11:36:21+08:00

    磁盘/控制器/RAID 硬件?关闭机器并运行 chkdsk c: /v /f (以及您拥有的任何其他分区。)。我知道你说问题发生在两台机器上,但也许它们都有来自坏批次的磁盘。

    或者您的磁盘很好,但有一个一次性故障导致注册表损坏。10 秒间隔可能是 Windows 定期执行的心跳功能(有时会导致崩溃后事件日志中出现“系统关闭在……意外”消息。)

    • 1
  3. yanglei
    2009-10-24T17:39:44+08:002009-10-24T17:39:44+08:00

    我将“句柄计数”列添加到进程视图中。一个进程永久保持创建句柄 (SNMP)。性能向导显示,在我们上次服务器崩溃之前,SNMP 有超过 200 万个句柄。

    肯定是手柄泄漏。事件日志条目仅仅是系统资源耗尽的结果。问题是哪个进程泄漏了句柄?我建议使用 perfmon 来跟踪各种系统范围的资源计数器,这样当系统再次崩溃时,您就有足够的数据来找出根本原因。

    以下计数器可能会有所帮助: 对象、内存、进程\Snmp

    顺便说一句:在你的情况下,罪魁祸首显然是 snmp 进程。

    • 0
  4. PsYx
    2013-01-28T23:53:09+08:002013-01-28T23:53:09+08:00

    我们遇到了完全相同的问题。事件查看器中的相同 EventID 错误 (333)。每隔几天服务器(Windows Server 2003 x64)就会无响应。本地或远程登录机器是不可能的,所以我们每次都必须重新启动它。我们升级了 RAID/磁盘/光纤通道 - 固件和驱动程序并卸载了一些用于在线备份的应用程序(IDrive 或 IStore 或类似的东西),问题就消失了。所以我仍然不确定是固件升级解决了问题还是有问题的应用程序导致了问题。

    • 0

相关问题

  • 如何在 IIS 中发送响应标头?

  • IIS 优化

  • 有什么理由使用 Windows Server 2003 而不是 Server 2008?

  • IIS 6.0 (Windows Server 2003) 备份的最佳实践?

  • 在 Windows Server 2003 下使用 wscipt 从 .asp 文件运行 .exe

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    从 IP 地址解析主机名

    • 8 个回答
  • Marko Smith

    如何按大小对 du -h 输出进行排序

    • 30 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    Windows 中执行反向 DNS 查找的命令行实用程序是什么?

    • 14 个回答
  • Marko Smith

    如何检查 Windows 机器上的端口是否被阻塞?

    • 4 个回答
  • Marko Smith

    我应该打开哪个端口以允许远程桌面?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    MikeN 在 Nginx 中,如何在维护子域的同时将所有 http 请求重写为 https? 2009-09-22 06:04:43 +0800 CST
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    0x89 bash中的双方括号和单方括号有什么区别? 2009-08-10 13:11:51 +0800 CST
  • Martin Hope
    kch 如何更改我的私钥密码? 2009-08-06 21:37:57 +0800 CST
  • Martin Hope
    Kyle Brandt IPv4 子网如何工作? 2009-08-05 06:05:31 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve