过去几天,我遇到了一些问题,我们的 WSUS 服务器 CPU 使用率达到 100%。我们的客户端不多(最多 30 个左右),所以这不是问题(更不用说这台服务器过去有更多客户端)。
因此,在调试过程中,我多次完全重新安装了 WSUS 和 Windows 内部数据库 (SQL Server 2005)(每次都删除数据库并下载文件),但问题依然存在。 sqlservr.exe
使用大约 85% 的可用 CPU,并wsusservice.exe
使用其余 15%。请记住,此时服务器上基本上没有发生任何事情(没有连接客户端等)。
我打开了任务管理器,发现这两个进程使用了大约 275 MB 的 RAM(在 1024 MB 的系统上)。但是,页面错误却不断增加(每秒大约 7k 到 10k)。因此,为了查看问题是否出在这里,我禁用了 Windows 中的页面文件并重新启动。我仍然看到页面错误率很高。任务管理器的性能选项卡仍然显示大约 600MB 的 PF 使用量……我不明白的是,如果没有页面文件,为什么它仍然跟踪 PF 使用量……? (驱动器正在颠簸,因此磁盘出现了问题,而且我在任务管理器中看不到太多的磁盘 I/O。自从我禁用 PF 以来,VMWare 管理器显示写入速率适中,约为 1.5 Mbps。它还显示读取速率下降,为 9 Kbps。驱动器能够达到比这高得多的突发速率,所以我只能假设这是由于寻道导致的,因此写入速率如此之低(随机写入))。
承诺费用如下:
- 总计:634408
- 限制:960004
- 峰值:657512
物理内存如下:
- 总计:1048012
- 可用:21864
- 缓存:402168
哦,它在 VMware ESXi 3.5 服务器(Quad Xeon、8GB RAM 和 6 x u320 SCSI HDD)上运行 Server 2k3 SP1。
我现在不知道该如何继续……
实际上,在我写这篇文章的时候,该sqlservr.exe
进程的内存使用量已经从大约 100mb 跃升至 330mb。它现在正在进行同步,因此我可以理解这种增长,但它从未因为完全同步等简单操作而占用 100% 的 CPU...
答案1
页面文件使用情况实际上并不是正在使用的页面文件,而是可以被调出。
我怀疑您看到虚拟 CPU 的就绪时间过长。尝试为这台机器临时设置 CPU 预留,看看是否遇到同样的问题。这将确保虚拟机获得其在虚拟世界中看到的所有物理 CPU。