深聊性能测试,从入门到放弃之: Windows系统性能监控(一) 性能监视器介绍及使用。

简介: 性能监视器, 没想到会这么腻害....


1、引言

小屌丝:鱼哥,你有没有监控Windows系统的工具

小鱼:???

小屌丝:我的Windows系统要做负载机, 我想监控负载机的性能,

但是,不知道下载什么监控工具。

小鱼:??

小屌丝:我不想在负载机搭建一个监控系统,太费劲了。

小鱼:??

小屌丝:我觉得负载机,就应该用轻量级的监控工具,但是在网上找了好多,都没有合适的。

小鱼:…

小屌丝:你有没有好的工具,推荐一下。

小鱼:Windows自带的性能监视器,

小屌丝:鱼哥,别闹。

小鱼:没闹。

小屌丝:鱼哥, 你就推荐一个,都说你的电脑是百宝箱,啥都有,别不舍得给我哦。

小鱼:给你了, 还不用安装, 就是Windows自带的性能监控器,

小屌丝:这… 能用…吗? 能符合我的要求吗?

小鱼:是不是白给的就觉得不香??

小屌丝:额… 这… 那这性能监控器都包含哪些呢?

小鱼:主要有三个: 性能监视器,资源监控器,任务管理器。

小屌丝:鱼哥,这三个,我最常用的就是任务管理器…

小鱼:呦呵,那你还挺厉害的, 那你能说说,都做啥呢?

小屌丝:就是… 关进程…

小鱼:我… 确实,是一个方法…。

小屌丝:难道,还有其他的功能?

小鱼:我… 确实, 有很多功能…

小屌丝:那你就给俺说说呗…

小鱼:勉为其难…


关于Windows系统性能监控,我会分篇来详细介绍,

今天,我们先聊一聊性能监视器。


2、性能监视器

2.1 打开方式

打开方式很多种, 这里主要说两种:


  • 1、快捷键:windows键+R键, 弹窗输入 perfmon 即可打开

  性能监视器 界面

  • 2、搜索方式:搜索栏直接输入"性能监视器",打开即可;

2.2 基本介绍

Perfmon性能监视器是Windows自带的一个性能工具。

主要收集3种类型数据:

  • 性能计数器;
  • 时间跟踪数据;
  • 系统配置信息


性能计数器

  • 是系统状态或活动情况的度量单位;
  • 包含在操作系统中或作为个别应用程序的一部分;
  • 以指定的时间间隔请求性能计数器的当前值;


事件跟踪数据

  • 是从跟踪提供程序收集到的;
  • 这些跟踪提供程序是操作系统或者用于报告操作或事件的个别应用程序的组件;
  • 可将多个跟踪提供程序的输出合并到一个跟踪会话中;


配置信息

  • 是从 Windows 注册表项值收集到的;
  • 可以在指定时间或间隔记录注册表项值作为日志文件的一部分。


性能监视器 界面


2.3 计数器介绍

2.3.1 处理器性能计数器

  • 主要关注系统中的CPU
  • Processor:%Processor Time
  • 如果CPU使用率的值持续超过95%,则表示CPU是瓶颈。
  • 计算方式:%Processor Time值 = 100% - Idle process时间比例(即 空闲线程Idle Thread),


  • Processor:% User Time
  • 是系统非核心操作消耗的CPU时间;
  • 如果表示数据库,则% User Time值大的原因可能是数据库的排序或者函数操作导致消耗过多的CPU时间;

2.3.2 内存性能计数器

  • Memory:Pages/sec


  • 表示由于硬件页面错误而从磁盘取出的页面数,或由于页面错误而写入磁盘以释放工作及空间的页面数。
  • 如果Pages/sec 持续高于几百,可能就需要增加内存,以减少换页的需求。
  • 但是,Pages/sec的值很大,并不一定就是内存的问题导致的,还可能是运行使用内存映射文件的程序导致;
  • 计数器的比率搞标识分页过多;
  • Memory:Available Mbytes


  • 可以使用的内存大小;
  • 如果改指标的数据比较小,可能是内存的问题;


  • Memory:Page Faults/sec 和 Memory:Page Reads/sec 计数器测量内存性能。
  • 当进程所引用的细腻内存页不在内存中,就会发生页错误,Memory:Page Faults/sec表示页错误的个数;


  • Memory:Page Reads/sec
  • 是读取磁盘,提取解决页错误所需页的次数;

2.3.3 网络性能计数器

  • Network Interface:Bytes received/sec
  • 每秒接收的数据为多少Bytes,
  • 结合Bytes total/sec 进行分析;


  • Network Interface:Bytes sent/sec
  • 每秒发送数据为多少Bytes;
  • 结合Bytes total/sec 进行分析;


  • Network Interface:Bytes total/sec
  • 机器接受和发送的总共为多少Bytes推荐不要超过带宽的50%;

  • Network Interface:Packets/sec
  • 每秒的数据包个数,根据实际数据量大小,无建议阈值;
  • 结合Bytes total/sec 进行分析;

2.4 创建及使用

2.4.1 用户自定义创建

  • 1、在性能→数据收集器集→用户定义: 右键 新建→数据收集器集


  • 2、新建页面, 输入名称 并选择 手动创建(高级),点击下一步


  • 3、床架数据日志:选择 性能计数器,并点击下一步;


  • 4、我们就选择数据库性能计数器,具体操作如下:


  • 5、在数据保存位置,可以默认,也可以自己选择,具体如下:


  • 6、这一页,默认即可, 然后点击完成;


  • 7、在用户定义列表, 启动创建的"数据收集器Demo",如下:


2.4.2 直接添加计数器

  • 1、性能→性能监视器,点击 +,进入到添加计数器 页面,如下:

  • 2、选择 计数器,这里依然选择 数据库,并点击添加 →确定 按钮,如下:


  • 3、此时在性能监视器页面, 可以看到添加的数据库计数器,并展示数据,如下;


3、总结

看到这里, 关于Windows系统自带的性能监视器的内容,就介绍的差不多了。

其实,Windows系统自带的性能监视器,还是有很强大的功能。

并且, 不需要你安装任何第三个监控工具,就可以把你的系统信息展示的明明白白的 。


当然, 《Windows系统性能监控》是一个系列的文章,


  • 《深聊性能测试,从入门到放弃之: Windows系统性能监控(一) 性能监视器介绍及使用。》
  • 《深聊性能测试,从入门到放弃之: Windows系统性能监控(二) 资源监控器介绍及使用。》
  • 《深聊性能测试,从入门到放弃之: Windows系统性能监控(三)任务管理器介绍及使用。》

当然,小鱼的性能专栏,还有很多系列文字, 如 性能专栏, 包含:

  • 从性能理论到实战的系列博文;
  • 性能工具的使用,如: Jmeter、Locust等;
  • 性能整个流程的梳理,性能需求的概述;
  • 如何进行性能分析;
  • 如何进行性能调优;
  • 手把手从0到1搭建Locust 性能测试平台;
  • MySQL性能监控的使用及分析;
  • APP性能测试及关注点;
  • … 等等

因为 小鱼的性能专栏内容太多了,我就不一一列举了,

  • 如果你现在想进阶性能测试高级工程师,
  • 如果你想第一时间学习小鱼发布的性能文字;
  • 如果你想学习最专业的的性能测试知识;

可以持续关注小鱼。


我是小鱼:

  • CSDN 博客专家;
  • 阿里云-专家博主;
  • 金牌面试官;
  • 51讲师;

关注我,带你学习更多更专业的性能知识。



目录
相关文章
|
10月前
|
数据采集 监控 机器人
浅谈网页端IM技术及相关测试方法实践(包括WebSocket性能测试)
最开始转转的客服系统体系如IM、工单以及机器人等都是使用第三方的产品。但第三方产品对于转转的业务,以及客服的效率等都产生了诸多限制,所以我们决定自研替换第三方系统。下面主要分享一下网页端IM技术及相关测试方法,我们先从了解IM系统和WebSocket开始。
210 4
|
16天前
|
测试技术 开发者 Python
Python单元测试入门:3个核心断言方法,帮你快速定位代码bug
本文介绍Python单元测试基础,详解`unittest`框架中的三大核心断言方法:`assertEqual`验证值相等,`assertTrue`和`assertFalse`判断条件真假。通过实例演示其用法,帮助开发者自动化检测代码逻辑,提升测试效率与可靠性。
124 1
|
21天前
|
测试技术 UED 开发者
性能测试报告-用于项目的性能验证、性能调优、发现性能缺陷等应用场景
性能测试报告用于评估系统性能、稳定性和安全性,涵盖测试环境、方法、指标分析及缺陷优化建议,是保障软件质量与用户体验的关键文档。
|
3月前
|
Web App开发 JavaScript 测试技术
Playwright 极速入门:1 小时搞定环境搭建与首个测试脚本
本文带你1小时快速入门Playwright,完成环境搭建并编写首个测试脚本。Playwright是微软推出的现代化Web自动化测试工具,支持Chromium、Firefox和WebKit三大浏览器引擎,具备跨平台、多语言(Python/JS/Java/C#)特性。其核心优势包括:智能自动等待机制减少失败率、内置录制工具实时生成脚本、多语言灵活选择,以及真移动端设备模拟能力,显著提升测试效率和可靠性。
|
10月前
|
算法 Java 测试技术
使用 BenchmarkDotNet 对 .NET 代码进行性能基准测试
使用 BenchmarkDotNet 对 .NET 代码进行性能基准测试
227 13
|
10月前
|
开发框架 .NET Java
C#集合数据去重的5种方式及其性能对比测试分析
C#集合数据去重的5种方式及其性能对比测试分析
118 11
|
10月前
|
开发框架 .NET Java
C#集合数据去重的5种方式及其性能对比测试分析
C#集合数据去重的5种方式及其性能对比测试分析
144 10
|
10月前
|
算法 Java 测试技术
Benchmark.NET:让 C# 测试程序性能变得既酷又简单
Benchmark.NET是一款专为 .NET 平台设计的性能基准测试框架,它可以帮助你测量代码的执行时间、内存使用情况等性能指标。它就像是你代码的 "健身教练",帮助你找到瓶颈,优化性能,让你的应用跑得更快、更稳!希望这个小教程能让你在追求高性能的路上越走越远,享受编程带来的无限乐趣!
429 13
|
11月前
|
并行计算 算法 测试技术
C语言因高效灵活被广泛应用于软件开发。本文探讨了优化C语言程序性能的策略,涵盖算法优化、代码结构优化、内存管理优化、编译器优化、数据结构优化、并行计算优化及性能测试与分析七个方面
C语言因高效灵活被广泛应用于软件开发。本文探讨了优化C语言程序性能的策略,涵盖算法优化、代码结构优化、内存管理优化、编译器优化、数据结构优化、并行计算优化及性能测试与分析七个方面,旨在通过综合策略提升程序性能,满足实际需求。
274 1
|
2月前
|
前端开发 Java jenkins
Jmeter压力测试工具全面教程和使用技巧。
JMeter是一个能够模拟高并发请求以检查应用程序各方面性能的工具,包括但不限于前端页面、后端服务及数据库系统。熟练使用JMeter不仅能够帮助发现性能瓶颈,还能在软件开发早期就预测系统在面对真实用户压力时的表现,确保软件质量和用户体验。在上述介绍的基础上,建议读者结合官方文档和社区最佳实践,持续深入学习和应用。
514 10

热门文章

最新文章