Tecnobits - 硬件 - 你的电脑运行缓慢吗?了解如何使用 Windows 中的 Perfmon 识别问题。

PerfMon 通过精确且可配置的计数器实现实时测量和长期记录。

Collector Sets 和 Logman 有助于在服务器上进行可重复的捕获和自动化。

内存、CPU、磁盘和网络的阈值有助于检测瓶颈和泄漏。

可靠性监视器通过显示故障和兼容性问题来补充分析。

性能监视器 (性能监视器)是 Windows 中的终极监控工具PerfMon:允许您查看 CPU、内存、磁盘、网络和特定进程的实时、长期和分析性能指标。与任务管理器不同,PerfMon 会定期采样并记录到磁盘,因此非常适合查找仅在运行数小时后才会出现的问题,例如服务和应用程序中的内存溢出或资源泄漏。

在本文中,我们向您展示 如何使用 PerfMon。 从选择和理解正确的计数器以及调整图表采样和缩放,到创建数据收集器集以将指标记录到文件(BLG/CSV)。

PerfMon 是什么以及何时使用它?

性能监视器 (PerfMon) 是原生的 Windows 计数器查看器和记录器。. 以图形和从系统和应用程序计数器(例如,来自 .NET CLR 或特定进程)获取的原始数据的形式呈现指标。 它的最大优势在于比“快速”实用程序,例如 任务经理 您可以让它运行数小时或数天,并定期进行采样,以检测真实趋势(峰值、基线、持续增长)。

性能监视器 对于 诊断内存增长、处理或线程泄漏并通过运行特定测试来隔离有问题的组件。例如,如果您怀疑存在内存泄漏,则可以为受影响的进程启用诸如“专用字节数”、“句柄数”和“线程数”之类的计数器,以及 .NET CLR 内存计数器(例如,对于 .NET 应用程序,启用“所有堆中的字节数”和“第二代堆大小”),以查看内存增长是在 GC 期间还是在 GC 之外发生的。

打开 PerfMon 的方法和专用模式

您可以打开 PerfMon 从开始菜单中,搜索“性能”或“perfmon”并以管理员身份运行 当您创建日志或查询远程计算机时。

如果您更喜欢 命令行 (Win+R 或 CMD),您有非常有用的直接模式,其语法如下:

perfmon

每个选项有什么作用?

/ res 打开资源视图

/报告 启动系统诊断收集器套件并查看报告。

/相对 打开可靠性监视器。

/系统 直接进入经典性能监视器。

评议会:如果您想检查设备的可靠性, 性能监视器/相对 这是稳定性和错误历史记录的直接捷径。

可靠性监视器 它也位于“控制面板”>“系统和安全”>“安全和维护”中。另一个快捷方式:在“开始”菜单搜索中输入“reliab”,然后选择“查看可靠性历史记录”。您将按天或按周查看关键事件、警告和信息,并可以访问 技术细节 应用程序和驱动程序故障。

独家内容 - 点击这里 如何从 Surface 笔记本电脑 4 中取出电池?实时可视化:添加和理解计数器

看一个 实时图表,在左侧树中打开“性能监视器”。如果您有预加载的计数器,并且想要开始清理,请在下表中选择它们,然后按 上尉 然后,在图表区域中,右键单击 > 添加计数器... 以打开包含所有可用类别的对话框。

Selecciona 感兴趣的类别、计数器和对象实例 (例如,您的进程)。要诊断特定应用中的内存和资源,请从组中添加以下关键计数器 流程 y .NET CLR 内存 适当情况下:

进程\私有字节:进程分配的私有内存(不与其他进程共享)。持续增长表示其自身虚拟内存实际被消耗。

进程\句柄计数:打开句柄的数量。持续增加通常表示存在资源泄漏(会话、系统对象)。

进程\线程数:进程中的活动线程数。意外峰值可能表示存在并发问题或线程未完成。

.NET CLR 内存 \ 所有堆中的字节数:.NET 对象的总内存。如果内存持续增长且未达到稳定状态,请检查 GC 压力和未释放的引用。

.NET CLR 内存 \ Gen 2 堆大小:第二代堆大小(长寿命项目)。持续增长表明存在未回收的长寿命项目。

用批判的眼光解读图表如果您注意到“专用字节数”稳步增加,而“所有堆中的字节数”和第二代堆大小保持稳定,则增长并非发生在 .NET 堆中,而是发生在进程的本机内存/预留空间中。这种模式通常表示 GC 之外存在泄漏(例如,未冻结的缓冲区或句柄)。

调整图表:比例、间隔和持续时间

PerfMon 允许 调整每个计数器的可见性和您看到的历史记录周期。 按 Ctrl + Shift + A 要选择下面列表中的所有计数器,请右键单击并选择 缩放选定的计数器,因此它们全部都是可见的,而不会“压扁”其余部分。

打开 图表属性 右键单击 >“属性…”,然后在“常规”选项卡中设置采样率。例如,每 10 秒采样一次,并将“持续时间”设置为 10000,以覆盖视图中大约 2,5 小时的时间。现象越长,采样率的间隔就应该越小,以避免文件过大并导致计算机过载。

额外提示:PerfMon 公开了 ActiveX 属性和方法,允许您从其他开发工具集成或控制它,甚至在需要时将其作为控件嵌入到您自己的应用程序中。

使用 Logman 实现自动化:创建、启动和停止

Logman.exe 是用于创建和管理计数器集的命令行实用程序。. 使用管理员权限打开命令提示符并运行类似以下命令,创建一个带有循环文件的大型连续监控套件:

独家内容 - 点击这里 如何测量喇叭的功率Logman.exe create counter Avamar -o "c:\\perflogs\\Emc-avamar.blg" -f bincirc -v mmddhhmm -max 250 -c "\\LogicalDisk(*)\\*" "\\Memory\\*" "\\Network Interface(*)\\*" "\\Paging File(*)\\*" "\\PhysicalDisk(*)\\*" "\\Processor(*)\\*" "\\Process(*)\\*" "\\Redirector\\*" "\\Server\\*" "\\System\\*" -si 00:00:05

至 开始和停止捕获,使用:

Logman.exe start Avamar

Logman.exe stop Avamar

命令提示:-f bincirc 创建循环二进制日志(-max 限制大小,以 MB 为单位),-si 定义采样间隔,-c 批量添加对象及其实例的计数器。编写脚本或导出配置时,请使用引号括起的路径并使用反斜杠进行转义。

何时使用 Logman? 它非常适合 收集远距离数据 在服务器上,自动执行诊断,或跨多台计算机标准化捕获。您可以使用任务计划程序进行调度,无需干预即可轮换文件。

每个子系统的有用计数器和阈值

记忆:监控实际容量、分页压力和系统池耗尽情况。以下计数器和指南有助于区分症状和原因:

内存 \ 已使用字节数百分比:已提交内存的百分比超出了提交限制。如果持续超过 80%,请检查分页文件大小和实际使用情况。

内存\可用MB:释放物理内存。检查内存使用量是否反复低于 5%(低于 1% 的情况非常严重)。

内存\已提交字节:已提交字节总数。不应出现剧烈变化;频繁更改可能会导致页面文件膨胀。

内存\池非分页字节:非分页池(无法刷新到磁盘的对象)。 持续饱和(> 80%) 它们与 2019(非分页池耗尽)等事件相关。

内存\池分页字节: : 分页池。如果值持续大于最大值的 70%,则表示存在发生 2020 年事件(分页池耗尽)的风险。

处理器:寻找持续负载和重 I/O 信号或嘈杂的驱动器。

处理器信息 \ 处理器时间百分比 (所有实例):在 90 个 CPU 上维持 >1% 或在多处理器上维持 >80% 表明 CPU 过载。

处理器 \ 特权时间百分比:内核模式时间。如果应用/Web 服务器的内核模式时间持续超过 30%,则可能表示驱动程序或系统负载过重。

处理器 \ 中断时间百分比 y % DPC 时间: > 25% 指向密集的设备活动(NIC、磁盘等)。

系统 \ 上下文切换/秒 y 处理器\中断/秒:有助于查看上下文切换压力和中断活动。

红色:指向 NIC 健康和通信质量。

网络接口\接收的数据包被丢弃:应保持接近于零;值上升通常表示缓冲区/硬件不足。

网络接口\数据包接收错误: : 错误 > 2 持续需要检查链接/电缆/驱动程序。

迪斯科:测量饱和度、延迟和容量。

物理磁盘 \ 空闲时间百分比:空闲时间百分比。持续低表示磁盘繁忙;它能很好地反映剩余容量。

物理磁盘 \ 平均磁盘秒/读取 y 平均磁盘秒/写入:平均延迟。典型参考值(指南):读取性能优异 < 8 毫秒,可接受 < 12 毫秒,一般 < 20 毫秒,较差 > 20 毫秒;写入性能优异 < 1 毫秒,良好 < 2 毫秒,一般 < 4 毫秒,较差 > 4 毫秒。

PhysicalDisk \ 平均磁盘队列长度:平均尾部。低于 2× 的值通常是合理的。

物理磁盘 \ 拆分 IO/秒:由于碎片或块大小不足导致 I/O 分裂。值越低越好。

逻辑磁盘 \ 可用空间百分比:在系统的逻辑卷上始终保留 > 15% 的可用空间(建议 ≥ 25%)。

独家内容 - 点击这里 如何在 PlayStation 5 上连接和使用机械键盘磁盘对象:物理与逻辑.

物理磁盘 添加对物理设备(识别硬件)所有分区的访问权限。

逻辑磁盘 测量特定分区或挂载点。对于动态磁盘,逻辑卷可以跨越多个物理磁盘,其计数器将反映总数。

过程:将资源与特定应用程序的行为关联起来,监控 进程 \ 处理器时间百分比, 私有字节, 虚拟字节 y 工作集. 处理计数 如果你怀疑泳池漏水,这是关键; 手柄 通常会伴有异常增多 池非分页/分页.

可靠性监视器:调查故障和兼容性

Windows 可靠性监视器按天或周总结稳定性和事件,分类 关键、警告和信息从每一列中,您可以打开“查看技术详细信息”来检查所涉及的二进制文件的模块、代码和数字签名。

实际例子您会发现类似 svchost.exe_MapsBroker 或其他崩溃应用程序的条目。有时,报告的模块(例如 Kernelbase.dll)属于 Windows 内核,并由 Microsoft 签名,这表明根本原因并非内核,而是在用户空间中运行的应用程序或插件。

当旧应用程序出现故障时该怎么办如果遇到界面或性能问题,请运行兼容性疑难解答程序,并尝试强制兼容模式(例如 Windows 7)并禁用高 DPI 缩放。此设置已被证实可以解决旧版软件的崩溃问题。

将稳定性发现与 PerfMon 联系起来将崩溃历史记录与计数器日志相结合,以查看崩溃前专用字节数、句柄计数或磁盘延迟是否较高。这种关联性可以为您提供线索。

实际关闭:使用 PerfMon 和可靠性监视器,您可以从症状(崩溃、缓慢)到原因(内存泄漏、磁盘瓶颈、 100% CPU、网络错误)进行诊断,并通过计数器和阈值为您提供清晰的指导。

如果你需要 快速入门指南:打开 PerfMon,为目标进程添加计数器(专用字节、% 处理器时间等),调整采样和持续时间以覆盖发生问题的窗口,使用收集器集记录到文件,并且如果适用,在需要运行数小时的服务器或测试环境上使用 Logman 实现自动化。

丹尼尔·特拉萨(Daniel Terrasa)专门研究技术和互联网问题的编辑,在不同数字媒体领域拥有十多年的经验。我曾在电子商务、通讯、在线营销和广告公司担任编辑和内容创作者。我还在经济、金融和其他领域的网站上撰写过文章。我的工作也是我的热情所在。现在,通过我的文章 Tecnobits,我尝试探索技术世界每天为我们提供的所有新闻和新机会,以改善我们的生活。

Copyright © 2088 世界杯举办国家_世界杯中 - zbtysj.com All Rights Reserved.
友情链接