本文将和大家谈谈,在Windows 7中对内。存、磁盘、网络这三类最重要的系统资源进行监控,以发现并解决性能瓶颈的相关技术细节
遭遇性能瓶颈,系统被拖垮,这无疑是管理员不愿看到的状况。从Windows Vista开始,微软加强了对系统各项资源性能状况的监控,其主要的技术手段所谓的性能计数器。利用这些计数器,我们可以对系统实施有效的监控,进而发现 并解决系统的性能瓶颈。本文将和大家谈谈,在Windows 7中对内存、磁盘、网络这三类最重要的系统资源进行监控,以发现并解决性能瓶颈的相关技术细节。
1、监控并解决内存瓶颈
Windows 7是个比较耗费内存的系统,微软建议最少要1GB的内存,虽然512MB的内存也可安装Windows 7,但那样的系统是根本不具有实用性。而且,在Windows 7中运行的程序也会使用大量的内存,这让不少小内存的老机用户雪上加霜。如果使用***要求的内存量安装Windows 7,毫无疑问系统将达不到***的运行状态。但同时就算使用推荐数量的内存安装,系统的性能可能也无法达到***。这是因为系统的内存需求取决于很多因素,包 括选择安装的Windows 7组件、开启的特效,以及应用程序及计算机本身的配置等。
对于Windows系统来说,我们知道系统需要同时使用物理内存和虚拟内存。物理内存不再赘述,虚拟内存是指写入到磁盘上分页文件中的内存数量。分页文件读取和写入数据的速度取决于磁盘系统的性能,比访问物理内存要慢很多。因此,我们没人会愿意过频繁地使用分页文件。
在打算监视内存使用情况之前,首先需要检查计算机是否有足够的内存运行系统和应用软件,随后,还需 要判断系统对内存的使用方式,并检查是否存在问题。我们应密切监视可用内存的数量,以及被使用的虚拟内存的数量。如果系统的可用内存数量非常少,则可能要 添加内存条。一般来说,可用内存的数量不应该少于系统中安装的物理内存总数的5%。如果通过监控发现Windwos 7使用的虚拟内存数量比物理内存总数高很多,我们需要添加新的内存条以解决内存吃紧的状况。
另外,还需要了解系统对分页文件的使用方式。如果某个进程请求内存中的页面,但系统无法在被请求的 位置找到,就表示发生了页面错误。如果被请求的页面位于内存中的其他位置,会导致软页面错误;如果被请求的页面必须从磁盘上的页面文件中重新获取,会导致 硬页面错误。大部分处理器可以处理大量的软错误,硬错误则会导致一定的延迟。如果系统中有大量的硬页面错误,会需要增加内存消耗,当然会降低系统性能。
了解了以上有关Windows内存管理的相关知识后,我们来看看Windows 7中可用于检查内存瓶颈的计数器。在Windows 7中,与内存监控相关的计数器最常用的有14个,笔者选择其中3个比较关键计数器进行解析。
MemoryAvailable Bytes 该计数器记录计算机上可用于运行进程的物理内存总量的字节数。如果其可用内存数量少于5%,表示系统缺少内存,同时性能会降低。此时,系统会频繁地将内存 分页到硬盘,以保证资源需求。如果可用内存的数量低于128MB,性能会更低。这种情况下,系统会持续将内存分页到硬盘,并尝试从运行的进程处“借”内 存,以保证资源的需求。如果内存缺乏的问题非常严重,一般是内存泄露问题导致的。
MemoryCommitted Bytes 该计数器记录已经被提交的虚拟内存的字节数。其数值代表已经被分页到磁盘上的内存,并且是使用中的。如果计算机使用的虚拟内存数比系统中安装的物理内存的总数多很多,这时解决系统瓶颈的办法是添加物理内存。
MemoryCommit Limit 该计数器显示可用的物理内存和虚拟内存数量。随着Committed Bytes数量的增长,分页文件可能会达到允许的***值。如果将初始页面文件设置得太小,系统可能会反复扩展分页文件大小,这需要占用一定的系统资源。因 此,建议大家***根据实际需要设置初始页面大小,或者直接使用古代的页面文件大小。通常情况下,我们可将其设置为物理内存大小的两倍。
上面这3个计数器是系统内存监控中最常用的计数器,在实战中我们还可配合其他的计数器对系统内存实施更加深入的监控。灵活应用这些计数器我们就能够在Windwos 7中监控内存,找到影响系统性能的内存瓶颈。
2、监控并解决磁盘瓶颈
虽然在Windows 7时代,硬盘很少会成为系统性能的瓶颈。不过,因为可用内存不足,系统需要将内存分页到影片儿导致频繁的硬盘读写。因为硬盘的读写速度要比内存慢很多,因 此过于频繁的分页会降低系统的整体性能。所以,我们要尽可能地减少磁盘参与内存分页,让系统有效管理内存,并在必要的时候才分页到硬盘。也就是说,可以针 对系统的硬盘采取一些操作,以改善性能。现在的硬盘非常便宜,当下为了安装Windows 7而添加新硬盘的用户也不在少数。这样的话,如果新硬盘比保存了分页文件的硬盘速度更快,则应该考虑将分页文件移动到该硬盘上。另外,如果两块硬盘的性能 相当,但其中一块硬盘承担了很多工作,而其他硬盘在大部分时间都是空闲的,这样我们也应该考虑将分页文件放到其他硬盘上,应平衡负载,提升系统性能。
下面我们来看看Windows 7中可用于检查磁盘性能的计数器,在Windows 7中与此相关的计数器最常用的有6个,笔者介绍其中最主要的3个计数器。
PhysicalDiskCurrent Disk Queue Length 该计数器记录等待被处理的磁盘访问的系统请求数量,如果这个值很高,表示磁盘的等待影响了系统系能。一般来说,等待被处理的请求越少越好。
PhysicalDiskDisk Writes/Sec 该计数器记录每秒中磁盘写操作的数量。这个值可以代表有多少磁盘I/O活动,通过跟踪每秒钟写操作的数量,以及写操作队列的大小,我们就能够判断下写操作地磁盘性能的影响如何。
PhysicalDiskDisk Reads/Sec 该计数器记录每秒钟磁盘读操作的数量。其含义与上面的写计数器类似,只不过反应的时磁盘的读性能。
这3个计数器是我们在Windows 7中对系统磁盘进行监控的主要计数器,通过其提供的监控数据我们就能够判断当前磁盘的性能,以及解决磁盘瓶颈。
3、监控并解决网络瓶颈
除了内存、磁盘等硬件资源,网络也是一项重要的系统资源,当然也是用户对Windows 7整体性能进行评估的一部分。从用户的角度来说,网络的响应速度会极大地影响用户在将自己的计算机和其他计算机连接到一起时的响应性能。无论计算机的速度 有多快,如果在发送请求和接收请求的计算机之间有很长的延迟,我们往往会认为是性能的响应速度太慢,所以对于网络性能的监控也应该算是系统性能监控的一部 分。
在Windows 7中可用于网络监控的计数器最主要的有4个,下面笔者分别做一解释说明。
Network InterfaceBytes Total/Sec 该计数器记录了通过网卡发送和接收数据的速度。如果系统中安装有多个网卡,我们需要分别进行跟踪监控,如果其中某个网卡的Bytes Total/Sec值突然变慢,甚至比预期的网络速度以及网卡速度还慢,这时我们需要检查网卡的配置,以解决性能瓶颈。比如该网卡的连接是否设置为全双 工,是否限制了流量等。
Network InterfaceCurrent BandWidth 该计数器以每秒比特数为单位估算所选网卡的当前带宽。同样的,如果系统中安装了多个网卡,我们需要为每一个网卡进行跟踪监控。
Network InterfaceBytes Received/Sec 该计数器记录通过网卡接收数据的速率。在系统中安装多个网卡时,我们同样需要对每一个网卡进行跟踪监控。
Network InterfaceBytes Send/Sec 该计数器记录通过网卡接收数据的速率。其使用方法和Bytes Received/Sec计数器类似。
4个计数器在我们进行网络监控中非常有用,不仅能够为我们提供当前的网络性能的实时数据,特别在多网卡的系统中进行分析比较时非常方便。
总结:系统监控是解决系统性能瓶颈的基础。对Windows 7这个新系统来说,其很多特性并不为我们所熟悉,通过其提供的监控计数器对系统进行监控,无论对于我们深入理解该系统还是据此解决系统瓶颈,提升系统性能都是很有帮助的。
【编辑推荐】