aix系统性能管理及oracle案例分析3181.docx

上传人:you****now 文档编号:48139151 上传时间:2022-10-05 格式:DOCX 页数:97 大小:311.61KB
返回 下载 相关 举报
aix系统性能管理及oracle案例分析3181.docx_第1页
第1页 / 共97页
aix系统性能管理及oracle案例分析3181.docx_第2页
第2页 / 共97页
点击查看更多>>
资源描述

《aix系统性能管理及oracle案例分析3181.docx》由会员分享,可在线阅读,更多相关《aix系统性能管理及oracle案例分析3181.docx(97页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、AIX 5.3主机性能评估 对于AIX主机的性能评估,我们从下面的4个方面来逐一介绍:CPU、MEMORY、I/O系统和网络这4个方面来描述。一、CPU性能评估 首先,我我们还是先来来看一下CPPU的性能评评估。下面先先主要介绍几几个看CPUU性能的命令令。1、使用vmsstat来进进行性能评估估,该命令可可获得关于系系统各种资源源之间的相关关性能的简要要信息。当然然我们也主要要用它来看CCPU的一个个负载情况。 下面是是我们调用vvmstatt命令的一个个输出结果:$vmstatt 1 2 System confiigurattion: lcpu=16 meem=235552MBkthr m

2、emoory pagee faultts cpu - - - - - r b avm free re pi po ffr sr cy iin ssy cs us syy id wwa 0 0 330919888 27441152 0 0 0 00 00 0 18499 261229 49007 8 1 88 33 0 0 330919889 27441151 0 0 0 00 00 0 25277 320113 65661 15 2 77 6 对上面面的命令解释释如下:Kthr段显示示内容r列表示可运行行的内核线程程平均数目,包包括正在运行行的线程和等等待 CPUU 的线程。如如果这个数字字大

3、于 CPPU 的数目目,则表明有有线程需要等等待CPU。b列表示处在非非中断睡眠状状态的进程数数。包括正在在等待文件系系统 I/OO 的线程,或或由于内存装装入控制而被被挂起的线程程。Memory段段显示内容avm列表示活活动虚拟内存存的页面数,每每页一般4KKBfre空闲的页页面数,每页页一般4KBBPage段显示示内容re 该列无无效pi 从磁盘交交换到内存的的交换页(调调页空间)数数量,4KBB/页。调页页空间是驻留留在硬盘上的的虚拟内存的的一部分。当当内存使用过过量时,会将将溢出的工作作组页面存储储到调页空间间中(窃取页页)。当进程程访问一个窃窃取页时,就就产生了一个个缺页故障,而而这

4、一页页必必须从调页空空间中读入到到内存中。po 从内存交交换到磁盘的的交换页数量量,4KB/页。如果窃取的的工作也在调调页空间中不不存在或者已已经作了修改改,则写入调调页空间中。如如果不被再次次访问,它会会留在调度空空间中直到进进程终止或者者放弃空间。fr 根据页面面替换算法每每秒释放的页页数。当VMMM页面替换换例程扫描页页面帧表(PPage FFrame Tablee,PFT)时时,它会根据据一些条件选选取需要窃取取的页面以补补充空闲列表表。该条件中中包含工作页页面和计算页页面,释放的的页面中,计计算页面不产产生I/O,工工作页面如果果数据没有发发生修改,也也不需要写回回磁盘,也不不会产生

5、I/O。sr 根据页面面替换算法每每秒所检查的的页数。srr值比fr值值高的越多,说说明替换算法法要查找可以以替换的页面面就越困难。cy 每秒页面面替换代码扫扫描了PFTT多少次。因因为增加空闲闲列表达到mmaxfreee值,不一一定需要完全全扫描PFTT表,而所有有vmstaat输出都为为整数,所以以通常cy列列值为0。Faults段段显示内容(其其实这段内容容不需太多关关注)in 在该时间间间隔中观测测到的每秒设设备中断数。sy 在该时间间间隔中观测测到的每秒系系统调用次数数。cs 在该时间间间隔中观测测到的每秒钟钟上下文切换换次数。Cpu段显示内内容us 列显示了了用户模式所所消耗的 C

6、CPU 时间间。sy 列详细显显示了 CPPU 在系统统模式所消耗耗的 CPUU 时间。id 列显示了了没有未决本本地磁盘 II/O 时 CPU 空空闲或等待时时间的百分比比。wa 列详细显显示了有未决决本地磁盘 I/O 时时 CPU 空闲的时间间百分比。wwa 的值如如果超过 225%,就表表明磁盘子系系统可能没有有被正确平衡衡,或者这也也可能是磁盘盘工作负荷很很重的结果。如果在一个单单用户系统中中,us + sy时间间不超过 990%,我们们就不认为系系统的CPUU是受限制的的。如果在一个多用用户系统中,uus + ssy时间超过过 80%, 我们就认认为系统的CCPU是受限限的。其中的的

7、进程将要花花时间在运行行队列中等待待。响应时间间和吞吐量会会受损害。检查cpu,我我们主要关注注报告中的44个cpu列列和2个ktthr(内核核线程)列。在上面的示例中中,我们可以以观察到以下下几个主要的的信息:CPU IDLLE比较高,比比较空闲;rr列为0,表表明线程不存存在等待;WA值不高,说说明I/O压压力不大;free值比较较大,pi,ppo为0,表表明内存非常常富裕。空闲闲较多。2、第二个常用用的是 saar命令,但但是sar会会增加系统的的开销。当然然有些情况下下,我们使用用sar比较较方便。sar的输出结结果与前面的的基本类似,这这里不再作详详细的介绍,关关于命令的语语法,也不

8、再再作详细的介介绍,我们常常用的命令格格式:#sar 1 2AIX jsddxh_dbb02 3 5 00CC2C1EB4C00 10/24/077System confiigurattion: lcpu=16 17:52:226 %usr %ssys %wioo %iidle physsc17:52:227 19 7 00 75 8.00017:52:228 19 6 00 75 8.001Averagee 19 7 00 75 8.001在这里,sarr命令输出的的是一个整体体的cpu使使用情况的一一个统计,统统计分项目的的内容也比较较直观,通过过名字就可以以理解涵义。这这里有一点比比较方

9、便的就就是,在最后后一行有一个个汇总的avveragee行,作为上上述统计的一一个平均。另另外,补充说说明一点的就就是,一般来来说,第一行行统计信息包包含了sarr命令本身启启动的cpuu消耗,所以以往往是偏高高的,所以导导致averrage值也也往往是偏高高一点的。当当然,这不会会对结果产生生多大影响。当我们有多个ccpu的时候候,而程序采采用的是单线线程,有时候候会出现一种种情况,我们们检查发现,ccpu总体的的使用率不高高,但是程序序响应却比较较慢。这里有有可能就是单单线程只使用用了一个cppu,导致这这个cpu1100占用用,处理不过过来,而其他他的cpu却却闲置。这时时可以对cppu

10、分开查询询,统计每个个cpu的使使用情况。#sar -PP ALL 1 2Sar还有其他他一些比较特特殊的使用方方法,比如:如果希望多个采采样和多个报报告,可为 sar 命命令指定一个个输出文件,这这样就方便多多了。将 ssar 命令令的标准输出出数据定向到到 /devv/nulll,并将 ssar 命令令作为后台进进程运行。具具体的命令格格式为:sar -A -o /ttemp/ssar_reesult.log 5 300 /dev/null & 关于ssar其他的的一些使用方方法,这里不不再详述。3、第三个可以以用来使用的的命令是ioostat.$ iostaat -t 2 4tty: t

11、iin tout avgg-cpu: % uuser % ssys % iidle % iiowaitt 0.0 0.0 00.0 0.1 999.8 00.1 0.0 81.0 00.0 0.1 999.9 00.0 0.0 40.5 00.0 0.0 1000.0 00.0 0.0 40.5 00.0 0.1 999.1 00.8TTY 的两列列信息(tiin 和 ttou)显示示了由所有 TTY 设设备读写的字字符数CPU 统计信信息列(% user、% sys、% idlee 和 % iowaiit)提供了了 CPU 的使用情况况。 注意:第一份报告告为系统启动动以来的一个个累积值。4

12、、使用tprrof命令用用于统计每个个进程的CPPU使用情况况# tproff -x ssleep 30该命令的输出结结果可查看 _proof.alll文件。此命命令运行300秒钟,在当当前目录下创创建一个名为为_proff.all 的文件。330秒钟内, CPU被调调度次数约为为3000次次。_prrof.alll 文件中中的字段Tootal 为为此进程调度度到的CPUU次数。如果果进程所对应应的 Tottal字 段段的值为15500,即表表示该进程在在3000次次 CPU调调度中占用了了1500次次,或理解为为使用了一半半的CPU时时间。tprrof的输出出准确地显示示出哪个进程程在使用C

13、PPU 时间。在我下面的这一一份示例中,可可以看到,大大部分的cppu时间都是是被waitt所占用的。这这里的waiit实际上是是idle进进程,可以表表明这个系统统是一个完全全空闲的系统统。在AIX 5LL下,你用pps auxx会发现有一一些roott的waitt进程#ps auxx |heaad -200wait就是CCPU空闲的的时候运行的的空闲进程,AAIX4上叫叫kprocc。所以这个个进程占用越越大,表示机机器越空闲。Wait进程的数量是由机器上的逻辑CPU的个数决定的,有几个逻辑CPU,就有几个wait进程.5、ps这个命命令使用本身身也比较复杂杂,在这里只只介绍如何查查看cp

14、u占占用最高的进进程。例如下下:#ps auxx | heead -225在这个输出结果果中,排在前前面的是166个roott用户的waait进程,这这其实是CPPU空闲的时时候运行的空空闲进程,之之前已作说明明。所以CPU最高高的几个进程程其实是下面面的ORACCLE用户的的ora_jj00*进程程,这是ORRACLE的的job进程程。在这里,这这些进程的开开销很小。如如果ORACCLE的进程程开销比较大大,我们可以以用如下的方方法来查询具具体的进程在在干什么事情情,例如我们们要查询进程程ora_jj000_oora92,PPID=3444612,可可以使用下面面的方法:$su ooracl

15、eeSQLsqllplus “/as ssysdbaa”SQLoraadebugg setoospid 3446112SQLoraadebugg evennt 100046 trrace nname ccontexxt forrever, leveel 8SQLoraadebugg traccefilee_namee 这个命命令我们获得得输出文件的的绝对路径和和文件名SQLoraadebugg evennt 100046 trrace nname ccontexxt offf$tkproff /optt/oraccle/appp/oraacle/aadmin/ora922/bdummp/ora

16、a92_j0000_3444612.trc ttraceppid.txxt$more ttraceppid.txxt在traceppid.txxt中,我们们就可以看到到这个进程中中具体运行的的语句、过程程等,以及所所有的SQLL的cpu消消耗、物理读读、逻辑读、执执行计划等信信息。另外,我们也可可以执行下面面的语句查看看进程具体运运行的SQLL语句的文本本:SELECT /*+ OORDEREED */ sql_ttext FFROM vv$sqlttext aa WHERRE (a.hash_valuee, a.aaddresss) INN ( SELECCT DECCODE (sql_hh

17、ash_vvalue,0, prrev_haash_vaalue,ssql_haash_vaalue), DECCODE (sql_hhash_vvalue,0, prrev_sqql_adddr, sqql_adddress) FROOM v$ssessioon b WHERRE b.ppaddr = (SEELECT addr FROM v$proocess c WWHERE c.spiid = &pid)ORDER BBY pieece ASSC6、解决CPUU占用的惩罚罚机制nicce和rennice指定和修改命令令的优先级。系统中运行的每每个进程都有有一个优先级级,我们可以以用ps命

18、令令看到,这个个优先级为PPRI,PRRI的值越小小,优先级越越高,能占用用更多的CPPU时间片。系系统默认的PPRI为600,我们可以以通过nicce命令和rrenicee命令来改变变一个进程的的优先级,从从而控制进程程对CPU时时间片的占用用。任何一个用户都都可以使用nnice命令令来使他的进进程以低于系系统默认的ppri运行。但但是只有rooot用户才才可以使进程程以高于默认认的pri运运行。我们先先来看一下nnice命令令的使用方法法:#nice n -5 vmstaat 2 110 vmmstat.out# ps -eelF S UIDD PID PPIID CC PRI NI AD

19、DDR SZ WCHHAN TTY TIMEE CMD200001 A 0 7047338 15223728 0 55 155 aee11400 544 f1000009e633c23e30 pts/1 0:00 vmmstat指定程序以niice值-55开始运行。程程序开始后,nnice的值值为15,PPRI的值为为55。niice命令可可以指定的范范围为-200 (最高优优先级)到 20 (最最低优先级)。在AIXX5.3中,默默认的nicce为20。# vmstat 2 10 vmstat.out# ps -eelF S UIDD PID PPIID CC PRI NI ADDDR SZ

20、 WCHHAN TTY TIMEE CMD200001 A 00 7044740 115237228 00 60 20 322ec64000 4472 f11000099e63c23ee30 ppts/1 0:000 vmsttat64 可以看看到默认的情情况下,系统统使用的niice=200,pri=60 。实际上在nicce指定的时时候,也可以以使用超出闭闭区间-220,20的值如:#nice n -333 vmsttat 2 10 vvmstatt.out# ps -eelF S UIDD PID PPIID CC PRI NI ADDDR SZ WCHHAN TTY TIMEE CMD

21、200001 A 00 3199652 115237228 00 40 0 822ef04000 5544 f11000099e63c23ee30 ppts/1 0:000 vmsttat64我们指定的niice小于-20,得到到最高的优先先级(prii=40)。反反之,如果我我们指定niice的值超超过20,比比如nicee=21,我我们将得到最最低的优先级级值pri=100。renice不不能在具有固固定优先级的的进程上使用用。非rooot用户可以以在一个或多多个运行进程程的nicee值上加一个个指定的值,但但不能从中减减去指定的值值。也就是只只能降低进程程的优先级,而而不能增加优优先级。

22、renice -n -110 piddnumbeer ,将指指定的进程nnice值减减小10。renice -n +5 pidnuumber ,将指定的的进程nicce值增加55。根据nice值值的不同取值值,这里reenice的的值可以取值值的范围是闭闭区间-440,40 。为什么取值值范围是这个个呢?我们可可以这样来理理解,通过pps l命令,我我们可以看到到NI的取值值范围是闭区区间0,440,我们们使用rennice需要要改变的也就就是整个值,考考虑两个极端端的情况,假假如现在为00,我们要把把它改到400,就必须得得renicce n 40,如如果现在是440,我们要要把它改为00,

23、则rennice的值值就得是-440了。当然,跟nicce一样,在在这里rennice的值值在命中使用用的时候也可可以超出这个个闭区间,不不会报错,但但有效的结果果只落在这个个闭区间内。# ps l 16302282FSUID PID PPIID C PRI NNI ADDDR SZZ RSSS WCCHAN TTYY TIMME CMDD200001 A 00 16300282 6800662 00 1000 40 413ee8400 472 484 EVENNT ptts/1 0:00 v# renicce -n -30 116302882# ps l 16302282FSUID PID

24、PPIID C PRI NNI ADDDR SZZ RSSS WCCHAN TTYY TIMME CMDD200001 A 00 16300282 6800662 00 50 10 413ee8400 472 484 EVENNT ptts/1 0:00 v我们可以总结一一下,prii值的取值公公式大概如下下:优先级值(PRRI)= 基基本优先级(660)niice损失 基于最最近CPU使使用情况的CCPU损失总的来说nicce值越小,进进程的优先级级越高,能分分配到更多的的cpu时间间片。反之,也也成立。7、小结对于系统cpuu的监控,建建议:1)使用vmsstat进行行分析2)sar P

25、ALLL 1 100 分析,多多个cpu间间的负载是否否平衡3)ps auux 查看4)tproff查看更详细细的信息二、Memorry性能评估估1、VMM简单单讲解一下内内存以及的VVMM的一点点工作原理。内存和交换空间间一般都是用用页面来进行行分配和管理理的。在内存中存在两两类型页面:计算页面(一一般为可执行行文件段中的的页面)和文文件页面(存存储的数据文文件的页面)。当我们执行程序序或者读入数数据的时候,内内存中的页面面就逐渐被占占用。当空闲闲的内存只剩剩maxfrree的时候候,vmm的的调页就被唤唤醒,通过调调页算法,将将内存中的页页面转移到交交换空间中。一一直到空闲内内存达到maa

26、xfreee,才停止调调页。在这里,我们涉涉及到两个参参数:Minfreee:最小空闲闲页链表尺寸寸。一旦低于于该值,系统统偷页以填充充页链表,保保证有足够的的内存页面。偷偷页就是将不不常用的页面面替换出去。Maxfreee:最大空闲闲页链表尺寸寸。一旦高于于该值,系统统停止偷页。如果发现空闲列列表不足,可可以用下面的的方法增加mminfreee参数#vmo -o minnfree=1000 -o maaxfreee=10088Settingg maxffree tto 10008Settingg minffree tto 10000#vmo oo minffree=11000 o maxxf

27、ree=1008 P # -P参数使使修改永久生生效一般下,minnfree和和maxfrree通过下下面的公式得得到:maxxfree=minmuum(memmory/1128,1228) ,mminfreee=maxxfree-8另外,关于内存存的使用,我我们还有两个个经常碰到的的参数需要关关注:Minpermm:用户I/O文件访问问的最小缓冲冲区页数Maxpermm:用户I/O文件访问问的最大缓冲冲区页数Minpermm和maxpperm这两两个参数的默默认值分别为为20和880。在这这里主要与性性能相关的是是maxpeerm参数。mmaxperrm参数指定定了文件页面面可以占用内内存的

28、上限,因因为文件页面面不主动释放放,所以很容容易造成内存存的文件页面面过高的占用用,导致其他他的应用内存存使用紧张。调整参数值的方法如下:#vmo -oo maxpperm%=80 -oo minpperm%=20Settingg minpperm% to 200Settingg maxpperm% to 800查看当前的参数数设置方法如如下:1)vmo a 显示当当前所有的参参数设置 #vmo -a cpu_scalee_mempp = 8 data_sstaggeer_inttervall = 1661 defpss = 1 forcce_rellaliass_litee = 0 fram

29、mesetss = 2 htabbscalee = n/a keernel_heap_psizee = 40096 largee_pagee_heapp_sizee = 0 lggpg_reegionss = 0 lgpgg_sizee = 0 low_pps_hanndlingg = 1 lru_ffile_rrepagee = 1 lrru_polll_inttervall = 100 lrubbuckett = 1331072 maxcllient% = 800 maaxfreee = 10088 maaxpermm = 455878122 maxxperm% = 800 mmaxpin

30、n = 488816500 maaxpin% = 800 mbuf_heap_psizee = 40096 memorry_afffinityy = 1 memmory_fframess = 600293122 memmplacee_dataa = 2 mempllace_mmappedd_filee = 2memplacce_shmm_anonnymouss = 2 memmplacee_shm_namedd = 2 mempplace_stackk = 2 memmplacee_textt = 2memplacce_unmmappedd_filee = 2 memmpoolss = 4 m

31、iinfreee = 9660 miinpermm = 111469522 minnperm% = 200 nokiilluidd = 0 nppskilll = 499152 npsrrpgmaxx = 3993216 npsrrpgminn = 2994912 nnpsscrrubmaxx = 3993216 nnpsscrrubminn = 2994912 nppswarnn = 1996608 nnum_sppec_daatasegg = 0 numppsblkss = 622914566 paage_stteal_mmethodd = 0 paagecolloringg = n/a

32、pinnaable_fframess = 566017588 pta_baalancee_threesholdd = n/a relaalias_perceentagee = 0 rpggcleann = 0 rpgcoontroll = 2 scrubb = 0 scrubbcleann = 0 soft_mmin_lggpgs_vvmpooll = 0 sspec_ddataseeg_intt = 5112 sstrictt_maxcclientt = 1 striict_maaxpermm = 0 v_ppinshmm = 0 vm_moodlistt_threesholdd = -11

33、 vmm_ffork_ppolicyy = 1 vmmm_mpsiize_suupportt = 12)# vmsstat -v 60229312 memorry pagges 57334766 lruabble paages 28001540 free pagess 4 memorry poools 4006918 pinneed pagges 80.0 maxpiin perrcentaage 20.0 minpeerm peercenttage 80.0 maxpeerm peercenttage 2.3 numpeerm peercenttage 1335417 file pagess

34、 0.0 comprressedd perccentagge 0 comprressedd pagees 0.0 numcllient perceentagee 80.0 maxcllient perceentagee 0 cliennt pagges 0 remotte paggeoutss scheeduledd 3112417 pendiing diisk I/Os bllockedd withh no ppbuf 0 paginng spaace I/Os bllockedd withh no ppsbuf 2878 filessystemm I/Oss bloccked wwith

35、nno fsbbuf 0 cliennt fillesysttem I/Os bllockedd withh no ffsbuf 0 exterrnal ppager filessystemm I/Oss bloccked wwith nno fsbbuf显示minpeerm和maaxpermm和numpperm的值值。numpeerm值给出出的是内存中中文件页数。系统调页的规则则:如果numpeermmaaxpermm,则只调出出文件页面。如果numpeermmiinpermm,则同时调调出文件页面面和计算页面面。如果minpeermnuumpermmmaxpperm,则则只调出文件件页面,

36、除非非新调入的文文件页面大于于计算页面的的总和。 如果系统在向调调页空间调出出页面,可能能使因为内存存中的文件页页数低于maxpermm,从而也调调出了部分的的计算页面以以达到maxxfree的的要求。在这这种情况下,可可以考虑把mmaxperrm降低到低低于numpperm的某某个值,从而而阻止计算页页面的调出。在5.2 ML4以后的版本中,为了防止计算页面被调出,可以采用另外一个方法,就是设置参数lru_file_repage=0。将该参数设为0,则告诉vmm在进行页面替换的时候,优先替换文件页面。maxclieent通常应应该设置为一一个小于或者者等于maxxperm的的值。 增强JJF

37、S文件系系统为它的缓缓冲区高速缓缓存使用客户户机文件,这这不受maxxperm和和minpeerm的影响响。为了在限限制增强JFFS文件系统统使用高速缓缓存,可以指指定maxcclientt的值,避免免在它进行页页面替换的时时候,替换其其他类型的页页。2.svmonn命令# svmonn -G -i 2 22 siize innuse free pinn vvirtuaalmemory 20971136 2366845 18660291 11521500 1949443pg spacce 10485576 960 woork ppers clnt lpageepin 1519904 246 0

38、 00in use 1949960 411885 0 00 siize innuse free pinn vvirtuaalmemory 20971136 2366853 18660283 11521500 1949447pg spacce 10485576 960 woork ppers clnt lpageepin 1519904 246 0 00in use 1949964 411889 0 00memory段段size 物理理内存总页数数。4KB/页inuse 物物理内存中正正在使用的内内存页面数。包包含活动进程程和已经终止止的进程的持持久文件页面面。free 空闲闲列表中的页页面数量

39、pin 锁定在在内存中的页页面数量(锁锁定的意思就就是不能被替替换出去)virtuall pg spacce段size 调页页空间总大小小inuse 已已经分配页的的总数,也就就是已经使用用的调页空间间页数pin段work 物理理内存中的工工作页面数pers 物理理内存中的持持久页面数clnt 物理理内存中的客客户机页面数数(客户机页页面就是一个个远程文件页页面)inuse段work 物理理内存中的工工作页面数pers 物理理内存中的持持久页面数clnt 物理理内存中的客客户机页面数数(客户机页页面就是一个个远程文件页页面)3、ps命令显显示当前运行行的进程状态态信息。运行行下列命令,显显示内存占用用前10位的的进程。# ps gvv |sorrt +6bb -nr |headd -10 24905338 - AA 1191:566 00 118440 327748 xx 445762 209244 0.11 0.00 ora_j00 203997

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 管理文献 > 电力管理

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁