nmon研究报告 联系客服

发布时间 : 星期日 文章nmon研究报告更新完毕开始阅读1c4a8d5983c4bb4cf6ecd14a

nmon使用与介绍

10) 页式调度:标签页(PAGE)

记录系统(AIX)页式调度的情况。这一栏主要记录系统换页(paging)情况和页面扫描:自由比率(page scan:free ratio)。其中系统换页频率应该不大于5次/秒,而当页面扫描:自由比率持续大于4时,需要重点关注下系统内存和分页空间的使用情况。

说明:

大量的内存交换操作会极大地影响系统的性能,尤其是在当数据库文件创建在文件系统上时(JFS and JFS2)。在这种情况下经常访问的数据,即在SGA中存在,也同样在文件的缓存中存在。这种相同的数据在内存中缓存两次的情况,会降低内存的使用效率,从而使内

17 / 27

nmon使用与介绍

存频繁进行交换操作,造成系统的I/O瓶颈,降低整个系统的性能。

11) 采集时间:标签页(ZZZZ)

记录nmon工具采集系统信息的时间点。

5. Nmon监控案例介绍

本节介绍通过nmon工具发现系统性能下降问题的常见现象和处理流程。

5.1 常见现象和产生原因

性能下降(Performance Degradation),主要是指系统的性能随时间而逐渐下降(这里假定在系统性能下降的过程中系统的负载状况没有明显变化)。系统运行过程中占用的CPU或内存随时间增加也属于广义的性能下降问题。

在生产环境中,通常由终端客户最先感觉到并报告性能下降问题。所以狭义的性能下降问题主要是指系统运行指标随时间变化,比如吞吐率随时间下降或页面响应时间随时间上升,或者两者兼而有之。

下面列举一些引起性能下降问题的原因:

? 应用程序资源使用问题。主要是内存使用问题,即由于应用服务器的内存碎片

问题或内存泄漏问题,导致垃圾回收的开销随时间增大。也有可能是因为磁盘临时文件积累造成磁盘访问开销增大。

18 / 27

nmon使用与介绍

? 应用程序设计问题。由于应用程序的设计存在可扩展性或可靠性问题,导致运

行开销随时间或业务对象的积累而增大。

? 数据库访问问题。该问题又可以分为许多类型,如调优参数问题、表结构或索

引设计问题、垃圾数据问题等。其共同特点是导致应用程序利用特定操作访问数据库的开销随时间而增大。

? 服务器软件资源使用问题。虽然可能性很小,但是应用服务器、数据库服务器

等服务器程序也是软件程序,也有可能存在性能下降问题。这些服务器程序在自身测试过程中可能遗漏了某些性能问题,而在用户特定的执行状况下触发了这些问题,结果导致这些服务器程序使用的操作系统资源泄漏而出现性能下降问题。

? 测试用例设计问题。性能测试中有可能发现一些“假”的性能下降问题。比如

测试用例设计时假设在测试执行过程中系统负载保持恒定,但实际的测试用例实现导致系统负载或特定页面的处理内容随时间增多,也可能导致测试工具的测试报告中出现性能下降问题。

5.2 实例介绍 5.2.1 示例一

图5-1 nmon操作系统监视汇总信息图

由此信息图可发现在12小时测试进行过程中,系统的磁盘传输(Disk xfers)逐渐增大,与此同时系统CPU占用率逐渐下降。进一步检查单个CPU的使用情况,发现1号CPU的Wait状态占用率明显增大,如图5-2所示。这说明CPU占用率逐渐下降是由于等待磁盘

19 / 27

nmon使用与介绍

I/O引起的。

图5-2 nmon单个CPU使用情况图

接下来分析磁盘传输汇总信息,如图5-3所示,可以看出磁盘写数据量没有明显增加,但是磁盘读数据量明显随时间而增加。

图5-3 nmon磁盘传输汇总情况图

凭磁盘传输汇总信息,在排除由应用服务器读取导致的性能下降问题后,基本可以肯定不断增加的磁盘读取操作是由数据库引起的。

随后,分析DB2的快照监视器的监视结果,可以发现DB2的缓冲池(Buffer pool)的数据和索引物理读(physical read)的比例非常高。如下例所示:

Buffer pool data logical reads = 5502388 Buffer pool data physical reads = 430671 Buffer pool temporary data logical reads = 0 Buffer pool temporary data physical reads = 0 ??

可以看到缓冲池的物理读比例(即缓冲池不命中率)高达7%,这远远大于1%的警戒线。而且物理读比例有随时间增加的趋势(通过不同时间的快照信息对比发现)。

20 / 27