任务管理器所提供的性能监视工具虽然简便,但是其功能太弱,对于复杂、系统的服务器性能监视工作,还需借助于系统监视器进行。在Windows NT 4.0中,系统监视器称为性能监视器。在Windows 2000中系统监视器属于核心管理工具之一,其功能强大,可以用来监视服务器活动或监视所选时间段内服务器的性能。系统监视器即可以在实时图表或报告中显示性能数据,又可以在文件中收集数据或在关键事件发生时生成警告。
系统监视器监视的单位是"对象",对象是指特定的控制服务器资源的服务或机制,例如处理器对象,内存对象、Web对象等。每一对象的不同方面的
属性称为"计数器",系统监视器真正记录的是这些计数器的值,例如处理器对象的%Processer Time计数器,内存对象的Pages Fault/Sec计数器等。
Windows 2000已经包括了许多计数器,在Windows 2000中安装IIS服务之后,系统监视器自动添加了特殊的IIS计数器,包括Web服务计数器、FTP 服务计数器、"Active Server Pages"应用程序计数器和"Internet信息服务"全局计数器。其中Web和FTP服务计数器与"Active Server Pages"应用程序计数器监视连接活动,"Internet 信息服务"全局计数器则监视所有IIS服务的带宽使用和高速缓存活动情况。
单击【开始】、【程序】、【管理工具】、【性能】,在【性能】工具的控制树中选择【系统监视器】,打开如右上图所示的系统监视器MMC窗口。
我们启动系统监视器之后并没有任何缺省的监视内容运行,管理员必须添加计数器才能让系统监视器工作。
右击性能监视器,从弹出菜单上选择【添加监视器】,打开如右图所示的添加监视器对话框。首先应指定监视对象位于那台服务器上,默认为监视本地服务器,选择【从计算机选择计数器】后亦可在列表中指定监视网络中其他计算机的对象。鉴于性能监视工作本身也会对系统性能造成影响,故通常在远程计算机上监视诸如CPU、内存之类的对象。随后从【性能对象】下拉列表中指定要监视的对象,对于IIS而言,可见监视的对象包括Web服务、FTP服务、NNTP服务器、SMTP服务器等等,这些对象包括相应服务的全部性能监视内容。每个对象包
括若干计数器,计数器是系统监视器进行监视的最基本单位。选定对象后单击【从列表选择计数器】,则在列表框中列出当前对象的全部计数器,计数器代表对象的某一方面特性,例如Web服务包括"每秒发送的文件数"、"当前CGI请求数测量异步I/O带宽使用"、"每秒匿名用户数"等数十个计数器。
鉴于每一对象包含的计数器数量庞大,管理员不太可能对所有计数器的功能了如指掌,因此需要随时查阅计数器说明。在列表中选择计数器后,单击【说明】,打开如右图所示的【说明文字】对话框,从中获得所选计数器的信息解释信息
单击选择计数器后,还要在【实例】列表中选定计数器监视的实例。这里的实例是指同一对象的平权组件,例如,如果计算机装有多个处理器,则每个处理器都可看作CPU对象的一个实例;又如对于Web服务对象,服务器上对每个虚拟站点都是一个实例,选择实例就是选择计数器监视的具体目标,选择实例列表中的【Total】项代表监视的前对象的所有实例。
选择计数器并单击【添加】,则系统监视器开始工作,一次可以添加多个计数器同时进行监视。系统监视器默认以曲线形式反映监视计数器的活动情况,单击工具栏中的【显示直方图】和【显示报告】图标,可将系统监视器显示方式更改为柱型直方图(如上左图所示)或摘要报告(如上右图所示)形式。
添加多个计数器的情况下,区分这些件事情的曲线活动并不容易,尤其是当它们具有相似的值时。系统监视器通常以不同的颜色和线形区分计数器,在计数器列表中可以对缺省分配的计数器颜色及线形进行修改。全部计数器的统一外观属性属于监视器的整体属性,右击系统监视器,从弹出菜单中选择【属性】,打开如右图所示的系统监视器属性对话框,其【常规】、【颜色】和【字体】选项卡分别定义了监视器的显示外观属性。
当需要在诸多计数器中突出显示某一计数器时,先在计数器列表中选中它,单击工具栏中的【加亮】图标即可。
对IIS服务器的性能监视立足于IIS服务和服务器硬件性能两个方面,前者主要是对IIS相关的服务对象进行监视,获得关于站点访问、用户、安全等方面的详细信息;而关于服务器本身的性能监视则涉及当前服务器硬件配置是否能够满足需求的问题。我们知道,过低的配置不能满足越来越多的用户访问需求,其造成的结果是系统响应变慢、例外错误增加等。而构成服务器的各个硬件部分中总有某一或某些组件对系统性能造成的影响更大一些,这就构成了系统的瓶颈。例如,一台PIII800/32M内存/15G硬盘的服务器响应很慢,我们一眼就能看出是过少的内存造成了运行的延迟,这里,内存就是瓶颈。对系统瓶颈的升级是最佳的投资,能够产生最高的性能/价格比。然而,大多数情况下,服务器的硬件瓶颈并非一目了然,这时就要借助于系统监视器找出瓶颈所在。通常可能成为瓶颈的部分是:CPU子系统、内存子系统、磁盘子系统等,对上述对象的典型计数器进行持续的监视,根据监视结果判断瓶颈所在并做出升级计划。
最典型的计数器及其推荐值列于下表中,超出推荐范围的对象即可认为已经成为系统瓶颈。
对象\计数器 推荐值
内存\页数/秒 00-20(如果大于 80,表示有问题)。
内存\可用字节数 最少 4 MB。
内存\提交的字节数 不超过物理内存的 75%。
内存\未分页的字节池 固定的(缓慢的增长表示存在内存泄露问题)。
处理器\% 处理器时间 小于 75%。
处理器\中断次数/秒 与处理器有关。486/66 处理器最大为 1,000;P90 为
3,500;P200 大于 7,000。 越低越好。
处理器\处理器队列长度 小于 2。
磁盘(逻辑磁盘或物理磁盘)\% 磁盘时间 尽可能低。
磁盘(逻辑磁盘或物理磁盘)\队列长度 小于 2。
磁盘(逻辑磁盘或物理磁盘)\平均磁盘字节/传输 尽可能高。
全局 Internet 信息服务\高速缓存命中数 % 尽可能高。
Web 服务\每秒总字节数 尽可能高。
Active Server Pages\请求等待时间 尽可能低。
Active Server Pages\已排队的请求 零。
Active Server Pages\事务数/秒 尽可能高。
前面推荐的瓶颈查找方法对于一般的IIS系统已经足够了,但在一个更加严格的大型网站服务器上,短期的监视(即使是在典型情况下的短期监视)并不能很好的提供瓶颈判断的依据。为此,我们有必要通过日志文件的方式对服务器进行长期监视,得到系统对象的平均特性,利用在数小时甚至数天时间中获得的数据建立所谓的"基线",为服务器升级提供可靠的保障。
1.在系统监视器中展开【系统日志和警报】节点,右击【计数器日志】,选择【新建日志设置】。
2.在【新建日志设置】对话框中输入新日志名称,单击【确定】。
3.如右图所示在新日志属性对话框的【常规】选项卡中单击【添加】打开计数器对话框,指定该日志文件记录的计数器,单击【确定】返回。
4.在【数据采样间隔】栏中指定计数器数据多久被采集一次,注意,过密的采集间隔会影响系统的正常工作并造成巨大的日志文件。
5.在【计划】选项卡中指定日志起止时间,可选的方式有:手动、指定起止时间或者指定记录时间。单击【确定】。6.如果选择手动起止日志,则在日志列表中右击日志,选择【开始】,日志图标变为绿色。
系统监视器将计数器数据以blg文件的形式保存起来(缺省位置是系统分区的\PerfLogs目录下)。一旦开始记录,计数器数据被定期(按照采样间隔时间)加入日志文件,直到到达计划的日志结束时间或者手工停止日志记录。