vmstat命令:
用來(lái)獲得有關(guān)進(jìn)程、虛存、頁(yè)面交換空間及 CPU活動(dòng)的信息。這些信息反映了系統的負載情況。
輸出項:
其中:
如果r經(jīng)常大于4,且id經(jīng)常少于40,表示cpu的負荷很重。
如果pi,po長(cháng)期不等于0,表示內存不足。
如果disk經(jīng)常不等于0,且在b中的隊列大于3,表示io性能不好。
1.)如果在processes中運行的序列(process r)是連續的大于在系統中的CPU的個(gè)數表示系統現在運行比較慢,有多數的進(jìn)程等待CPU。
2.)如果r的輸出數大于系統中可用CPU個(gè)數的4倍的話(huà),則系統面臨著(zhù)CPU短缺的問(wèn)題,或者是CPU的速率過(guò)低,系統中有多數的進(jìn)程在等待CPU,造成系統中進(jìn)程運行過(guò)慢。
3.)如果空閑時(shí)間(cpu id)持續為0并且系統時(shí)間(cpu sy)是用戶(hù)時(shí)間的兩倍(cpu us)系統則面臨著(zhù)CPU資源的短缺。
解決辦法:
當發(fā)生以上問(wèn)題的時(shí)候請先調整應用程序對CPU的占用情況.使得應用程序能夠更有效的使用CPU.同時(shí)可以考慮增加更多的CPU. 關(guān)于CPU的使用情況還可以結合mpstat, ps aux top prstat –a等等一些相應的命令來(lái)綜合考慮關(guān)于具體的CPU的使用情況,和那些進(jìn)程在占用大量的CPU時(shí)間.一般情況下,應用程序的問(wèn)題會(huì )比較大一些.比如一些sql語(yǔ)句不合理等等都會(huì )造成這樣的現象.
內存問(wèn)題現象:
內存的瓶頸是由scan rate (sr)來(lái)決定的.scan rate是通過(guò)每秒的始終算法來(lái)進(jìn)行頁(yè)掃描的.如果scan rate(sr)連續的大于每秒200頁(yè)則表示可能存在內存缺陷.同樣的如果page項中的pi和po這兩欄表示每秒頁(yè)面的調入的頁(yè)數和每秒調出的頁(yè)數.如果該值經(jīng)常為非零值,也有可能存在內存的瓶頸,當然,如果個(gè)別的時(shí)候不為0的話(huà),屬于正常的頁(yè)面調度這個(gè)是虛擬內存的主要原理.
解決辦法:
1.調節applications & servers使得對內存和cache的使用更加有效. kg][qn|>J]
2.增加系統的內存.
3. Implement priority paging in s in pre solaris 8 versions by adding line "set priority paging=1" in
/etc/system. Remove this line if upgrading from Solaris 7 to 8 & retaining old /etc/system file.
關(guān)于內存的使用情況還可以結ps aux top prstat –a等等一些相應的命令來(lái)綜合考慮關(guān)于具體的內存的使用情況,和那些進(jìn)程在占用大量的內存.一般情況下,如果內存的占用率比較高,但是,CPU的占用很低的時(shí)候,可以考慮是有很多的應用程序占用了內存沒(méi)有釋放,但是,并沒(méi)有占用CPU時(shí)間,可以考慮應用程序,對于未占用CPU時(shí)間和一些后臺的程序,釋放內存的占用。