目录Windows操作系统性能监控工具和指标分析 (1)一、监视工具 (2)(一)Windows2003性能监控组件 (2)1.系统监视器 (2)2.计数器日志 (3)(二)Windows2008可靠性和性能监视器组件 (4)1.性能监视器 (5)2.可靠性监视器 (5)3.数据收集器集 (5)(三)Windows 7资源监视器 (5)(四)其他监控工具 (6)1. Windows任务管理器 (6)2. Microsoft网络监视器 (7)3. TCPView (8)4. Procexp (9)5. procmon (9)二、名词解释 (10)三、系统监控方法 (11)(一)监控操作 (11)(二)选择要监视的数据 (13)(三)分析性能数据 (13)1.内存分析方法 (14)2.处理器分析法 (15)3.磁盘I/O分析方法 (15)4.进程分析方法 (16)5.网络分析方法 (16)(四)解决性能问题 (19)1. 分析资源瓶颈的原因 (19)2. 调整测试的策略 (19)3. 资源调整优化 (19)站在操作系统层面来看系统资源的使用,主要涉及到的监控对象有:处理器使用情况、内存占有量、磁盘I/0操作以及网络流量等。
本文介绍了Windows操作系统监控常用的工具、监控对象、监控指标、资源瓶颈判断方法。
一、监视工具(一)Windows2003性能监控组件性能监控组件是Windows操作系统提供的监控系统性能的组件,可以通过“控制面板”>“管理工具”>“性能”打开,或者通过运行命令perfmon.msc打开。
图1 windows 2003性能组件1.系统监视器系统监视器可以通过图形化方法监控选定的性能计数器的值,它用于实时以及从日志文件中查看性能数据。
如果是实时监控只能监控1分40秒的数据。
下图是系统监视器的属性对话框,它可以设置监控数据的来源。
图2 系统监视器属性对话框2.计数器日志在性能组件中“性能日志和报警”节点下有“计数器日志”,它可以配置以固定周期记录所选择计数器的数据,并可以存储历史日志数据。
在“计数器日志”节点上可以右键选择“新建日志设置(N)…”,然后给日志取名字,也可以设置日志中要采集的计数器、采集周期、日志文件格式、监控调度计划等。
下图显示的是“System Overview计数器日志”项的属性。
图3 计数器日志属性(二)Windows2008可靠性和性能监视器组件Windows2008改进了性能监控组件,新增了“可靠性监视器”功能,“计数器日志”也修改成了“数据收集器”。
我们通过“控制面板”>“管理工具”> “可靠性和性能监视器”打开可靠性和性能监视器组件,也可以运行命令perfmon.msc打开。
图4 windows 2003可靠性和性能监视器组件1.性能监视器性能监视器是一种简单而功能强大的可视化工具,用于实时以及从日志文件中查看性能监控数据。
使用它,可以以图形化方式查看计数器的值,实时监控只能监控1分40秒。
2.可靠性监视器可靠性监视器管理单元提供系统稳定性概览和影响可靠性的事件的详细信息。
它会计算出在系统的生存时间内系统稳定性图表中所显示的稳定性指数。
3.数据收集器集数据收集器集是Windows 可靠性和性能监视器中性能监视和报告的功能块。
它将多个数据收集点组织成可用于查看或记录性能的单个组件。
可以创建数据收集器集,然后执行下列操作:逐个记录,与其他数据收集器集组合而且并入到日志中,在性能监视器中查看,配置为达到阈值时生成警报,或者由其他非Microsoft 应用程序使用。
可以将其与在特定时间收集数据的计划规则关联起来。
数据收集器集可以包含以下类型的数据收集器:性能计数器、事件跟踪数据、系统配置信息(注册表项值)。
(三)Windows 7资源监视器运行命令resmon命令开启资源监视器,Windows 资源监视器是一个系统工具,用于实时查看有关硬件(CPU、内存、磁盘和网络)和软件(文件句柄和模块)资源使用情况的信息。
我们可以按照要监视的特定进程或服务来筛选结果。
此外,还可以使用资源监视器启动、停止、挂起和恢复进程和服务,并在应用程序没有按预期效果响应时进行故障排除。
图5 Windows 7资源监视器(四)其他监控工具1. Windows任务管理器Windows任务管理器可以方便地查看本机进程的详细信息,以及CPU、内存、网络的使用情况。
图6 Windows 任务管理器2. Microsoft网络监视器Windows网络监视器是windows Server版操作系统自带的用于监控网络状况的组件。
如果默认没有安装,可通过“添加删除Windows组件”进行添加。
网络监视器在第一次运行时,会提示选择监视哪个网卡的网络通信状况,如果只有一个默认局域网连接,点击“确定”即可。
但如果有多个连接,必须选中需要进行监视的连接。
网络监视器只针对指定的网卡进行监视,所产生的指标均是这个网卡的。
选择好网卡,进入监视器的主窗口后,点击工具栏中的三角形(类似“Play”按钮)按钮,就开始监视指定网卡的通信了。
网络监视器提供了“网络利用率”、“每秒帧数”、“每秒字节数”、“每秒广播数”等网络通信监控功能,这些参数对于网络故障的排除和网络监控具有非常重要的作用。
其中,“网络利用率”是网络当前负载与最大理论负载量的比率。
我们现在使用的局域网都是以太网,共享式以太网(采用集线器)的最大网络利用率不过在50%左右。
如果超过这个数值,网络就饱和了,网络速度会非常慢。
交换式以太网(采用交换机)的最大利用率则可达80%左右。
“每秒帧数”是指被监视的网卡每秒发出和接收的帧数量,它可以作为网络通信量的一个指标。
“每秒字节数”是指被监视的网卡发出和接收的帧值之和,它也是网络通信量的一个指标。
“每秒广播数”是被监视的网卡发出和接收到的广播帧的数量。
在正常情况下,每秒广播帧数比较少,主要视网络上的计算机数量而定。
在发生“广播风暴”时,每秒广播帧数非常多,可高达1000帧以上。
图7 Windows Server版Microsoft网络监视器3. TCPViewTCPView可以显示本机的所有TCP和UDP使用详细清单,包括所有进程的名称,地址和TCP连接状态。
图8 TCPView程序界面4. ProcexpProcexp是一个很好的进程分析工具,相比windows系统自带的任务管理器,其优秀之处在于很方便地查看进程相关信息,如进程路径,参数,线程等,还可以查看tcpip连接,进程关系,占用情况等.图9 Procexp程序界面5. procmonprocmon (Process Monitor)是集文件,进程,注册表,网络监控功能为一体的程序,procmon集成了filemon和diskmon的文件读写监控功能,regmon的注册表读写监控功能,tcpview的网络连接监控功能,procexp的进程监控功能。
图10 procmon程序界面二、名词解释在使用Windows操作系统自带的性能监控组件监控系统性能时,涉及到几个名词,在此先做个解释。
性能对象:“系统监视器”中计数器的逻辑集合,与可受监控的资源或服务相关联。
性能对象被内置于操作系统,通常对应于主要的硬件组件,例如内存、处理器等等。
其他程序可能安装他们自己的性能对象。
性能计数器:“系统监视器”中与性能对象相关联的数据项。
每个性能对象提供了若干个性能计数器,它们记录系统或服务特定方面的数据。
例如,“Memory”对象提供的“Pages/sec”计数器跟踪内存换页的速率。
性能对象实例:用来区分计算机上相同类型的多个性能对象。
下面是最频繁使用的一些性能对象:Cache、Memory、Objects、Paging File、Physical Disk、Process、Processor、Server、System、Thread。
下表列出了在配置中可能使用的一些操作系统服务或功能及其相应的性能对象。
表1 监控的功能和性能对象对照表某些对象类型(如“Memory”和“Server”)只有一个性能对象实例,某些性能对象可能有多个实例。
如果某一对象有多个实例,则可以针对每个实例将计数器添加到跟踪统计中,或者,可一次针对所有实例将计数器添加到跟踪统计中。
根据计数器的定义方式,其值可以为:●资源利用方面的最新衡量。
这些被称为即时计数器。
示例是Process\ThreadCount,它将显示特定进程最后一次被衡量时的线程数。
●对采样周期的最后两次衡量的平均值。
示例是Memory\Pages/sec,它是基于最后两次采样期间内存页平均值的每秒速率。
三、系统监控方法(一)监控操作如果短时间监控系统性能计数器,可使用“系统监视器”的功能,它只能实时监控1分40秒的数据。
如果长时间监控,可使用“计数器日志”。
在“计数器日志”项上右击,选择“新建日志设置”,在弹出的“新建日志设置”对话框中给日志取个名字。
图5 新建日志设置对话窗“新建日志”>“属性”常规选项卡中可以添加需要监控的“性能对象”、“性能计数器”、“性能对象实例”以及采集周期,日志格式,文件命名,调度计划等。
图6 日志设置属性设置添加计数器的方法是先在“从计算机选择计数器对象”中选择要监控的机器名称,如: \\IP地址或计算机名称。
然后选择“性能对象”,如:System、Processor、Memory、Process、Physical Disk、Logical Disk、Network Interface、Server、Thread、Cache、.NET CLR 系列、系列、SQL Server系列。
每个“性能对象”中很多的计数器,在“从列表选择计数器”中选择要监控的计数器名称。
有些计数器还有多个“实例”,我们可以在“从列表选择实例”中选择计数器的实例。
下图显示了添加计数器对话框。
图7 添加计数器(二)选择要监视的数据一般我们通过按以下顺序监视资源使用情况:内存->处理器->磁盘->网络,下表显示了对监视服务器推荐使用的计数器类型。
表2 监控的资源、目的、性能计数器对照表(三)分析性能数据分析监视数据包括在系统执行各种操作时报告的检查计数器的值。
查看哪些进程是最活跃的以及哪些进程或线程独占资源。
我们把系统处理一个典型的负载并运行所有必要的服务,确定可以接受的系统性能级别定义为一个“基准”。
这种“基准性能”是管理员根据工作环境确定的一种主观标准,它可以用来作为性能的对照标准,基准性能一般也可以与计数器值的范围相对应。
通常,决定计数器可接受值是一种主观判断,它会随用户环境的变化而明显地变化。
在这里我们列出了特定计数器的阈值,以帮助我们在判断系统资源使用是否出了问题。