日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

Oracle在Solaris下的性能與調(diào)整簡介( 二 )


作為你積極的維護(hù)計劃的一部分,檢查/var/adm/messages中有沒有比如磁盤重試之類的硬件問題或者有沒有額外的消息產(chǎn)生也是很有價值的 。
察看系統(tǒng)的歷史信息也非常有價值;如果你的系統(tǒng)曾經(jīng)有過更好的性能,畫一條時間曲線詳細(xì)記錄何時第一次發(fā)現(xiàn)性能變差以及從什么時候開始性能一直很差 。
2.知道你的系統(tǒng)在正常情況下會怎樣
保存你的系統(tǒng)是如何正常運轉(zhuǎn)的樣例是一個好主意 。你可以很容易地收集和保存每月的性能數(shù)據(jù),比如:
*stat類:vmstat,mpstat,iostat,vxstat,sar
ps的輸出以顯示哪些進(jìn)程在運行(在Solaris8操作環(huán)境下是prstat) 。另外,有不少商業(yè)的和無支持的產(chǎn)品都可以用來做性能監(jiān)測 。一個免費的無支持的可選產(chǎn)品是SEToolkit(要獲得其各種版本的信息,請看SunPerformanceSEToolkitpage) 。SEToolkit報告磁盤活動、CPU利用情況、TCP和網(wǎng)絡(luò)連接、內(nèi)存,以及其他更多信息 。在我們的經(jīng)驗里,它安裝方便,不需要重啟系統(tǒng),并且生成容易理解的圖形顯示 。
很多這類產(chǎn)品都存在一個共同的問題,就是對不同的硬件配置有不同的門限值 。例如,特定的門限值對于400-MHz的系統(tǒng)可能顯得太過,會讓這個系統(tǒng)慢得象是在爬一樣,但是對于一個900-MHz的系統(tǒng)卻可能是可以接受的 。
3.尋找性能瓶頸
一旦你已經(jīng)定義了需要解決的性能問題,下一步驟就是縮小范圍到瓶頸產(chǎn)生的地方 。
這個階段有必要問這樣一些問題:
應(yīng)用程序能告訴我它看到哪些是瓶頸?拿Oracle作例子,一個Oracle數(shù)據(jù)庫管理員應(yīng)該知道BSTAT/ESTATS是什么以及如何運行和理解它們 。還是那句話,從應(yīng)用程序的角度來看問題,BSTATS/ESTATS可以顯示限制了Oralce性能的瓶頸,這可以作為進(jìn)一步分析的指導(dǎo) 。
大部分的時間花在哪里,是內(nèi)核還是用戶進(jìn)程?通過vmstat、mpstat、sar、ps、prstat可以回答這個問題 。
具有相近類型的所有資源是否同樣繁忙?這個問題的意義在于尋找資源的不平等分布 。比如,一個磁盤可能是瓶頸所在,或者一個CPU會比其他CPU更忙 。對CPU,看mpstat 。對磁盤,用iostat 。哪個或哪些進(jìn)程在使用最多的資源?用這些命令可以看到使用CPU和內(nèi)存最多的進(jìn)程:
ps-eopid,pcpu,args|sort 1n
CPU百分比:
ps-eopid,vsz,args|sort 1n
K字節(jié)的虛擬內(nèi)存:
/usr/ucb/psaux|more
輸出被排序,使用CPU和內(nèi)存最多的進(jìn)程排在上面 。
Solaris8操作環(huán)境提供了prstat,它給出CPU和內(nèi)存使用情況的一個動態(tài)注解 。prstat-cvm的輸出結(jié)果非常有用 。
我們現(xiàn)在來看看怎用使常見的Solaris命令來開始性能分析 。
vmstat命令是簡單的 。這里我們可以看到一個對于正在執(zhí)行的應(yīng)用程序,CPU能力不足的例子 。
%vmstat15
procsmemorypagediskfaultscpu
rbwswapfreeremfpipofrdesrm0m1m2m3insycsussyid
450028872161821043707449645508026101531579798361309
580028313124640859835825632110492000014134797102769310
550028309445606426496563806012100001441462798969310
5700282770448760481872368000121001016064316116066340
560028247124751268576045617360261001015844939108668320
580028134004705678566733323740355000016765112111470300
6010281671249464786172067310110703023296131106764360
5800281755248392458552109960146000013576724105971290
vmstat輸出的第一行總是可以忽略 。在"procs"下面標(biāo)著"r"的一列是等待獲得CPU的進(jìn)程運行隊列中的進(jìn)程數(shù) 。"id"列是CPU空閑時間 。這臺機(jī)器沒有足夠的CPU資源以滿足進(jìn)程運行的需要,這可以從它的大部分CPU時間花在用戶空間里看出來(看"us"列) 。
【Oracle在Solaris下的性能與調(diào)整簡介】這里有兩種辦法可供采用——第一,增加更多的CPU,或者第二,對應(yīng)用程序的代碼作性能分析看看是不是應(yīng)用程序的某部分可以優(yōu)化 。對代碼片斷作優(yōu)化可能會需要非常大量的努力——而且有時候收到的效果很少 。在關(guān)系到時間的時候,最好在考慮你可能的“投資回報時現(xiàn)實一點 。

推薦閱讀