CentOS命令行性能檢測工具有哪些-創(chuàng)新互聯(lián)

本篇內(nèi)容介紹了“CentOS命令行性能檢測工具有哪些”的有關(guān)知識,在實(shí)際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

成都創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價比葉集網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式葉集網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋葉集地區(qū)。費(fèi)用合理售后完善,十年實(shí)體公司更值得信賴。

一、uptime

Uptime命令的顯示結(jié)果包括服務(wù)器已經(jīng)運(yùn)行了多長時間,有多少登陸用戶和對服務(wù)器性能的總體評估(load average)。load average值分別記錄了上個1分鐘,5分鐘和15分鐘間隔的負(fù)載情況,load average不是一個百分比,而是在隊列中等待執(zhí)行的進(jìn)程的數(shù)量。如果進(jìn)程要求CPU時間被阻塞(意味著CPU沒有時間處理它),load average值將增加。另一方面,如果每個進(jìn)程都可以立刻得到訪問CPU的時間,這個值將減少。

UP kernel下的load average的很好值是1,這說明每個進(jìn)程都可以立刻被CPU處理,當(dāng)然,更低不會有問題,只說明浪費(fèi)了一部分的資源。但在不同的系統(tǒng)間這個值也是不同的,例如一個單CPU的工作站,load average為1或者2都是可以接受的,而在一個多CPU的系統(tǒng)中這個值應(yīng)除以物理CPU的個數(shù),假設(shè)CPU個數(shù)為4,而load average為8或者10,那結(jié)果也是在2多點(diǎn)而已。

CentOS命令行性能檢測工具有哪些

你可以使用uptime判斷一個性能問題是出現(xiàn)在服務(wù)器上還是網(wǎng)絡(luò)上。例如,如果一個網(wǎng)絡(luò)應(yīng)用運(yùn)行性能不理想,運(yùn)行uptime檢查系統(tǒng)負(fù)載是否比較高,如果不是這個問題更可能出現(xiàn)在你的網(wǎng)絡(luò)上。

二、top

Top命令顯示了實(shí)際CPU使用情況,默認(rèn)情況下,它顯示了服務(wù)器上占用CPU的任務(wù)信息并且每5秒鐘刷新一次。你可以通過多種方式分類它們,包括PID、時間和內(nèi)存使用情況。

CentOS命令行性能檢測工具有哪些

下面是輸出值的介紹:

引用

PID:進(jìn)程標(biāo)識

USER;進(jìn)程所有者的用戶名

PRI:進(jìn)程的優(yōu)先級

NI:nice級別

SIZE:進(jìn)程占用的內(nèi)存數(shù)量(代碼+數(shù)據(jù)+堆棧)

RSS;進(jìn)程使用的物理內(nèi)存數(shù)量

SHARE;該進(jìn)程和其他進(jìn)程共享內(nèi)存的數(shù)量

STAT:進(jìn)程的狀態(tài):S=休眠狀態(tài),R=運(yùn)行狀態(tài),T=停止?fàn)顟B(tài),D=中斷休眠狀態(tài),Z=僵尸狀態(tài)

%CPU:共享的CPU使用

%MEM;共享的物理內(nèi)存

TIME:進(jìn)程占用CPU的時間

COMMAND:啟動任務(wù)的命令行(包括參數(shù))

進(jìn)程的優(yōu)先級和nice級別

進(jìn)程優(yōu)先級是一個決定進(jìn)程被CPU執(zhí)行優(yōu)先順序的參數(shù),內(nèi)核會根據(jù)需要調(diào)整這個值。Nice值是一個對優(yōu)先權(quán)的限制。進(jìn)程優(yōu)先級的值不能低于nice值。(nice值越低優(yōu)先級越高)

進(jìn)程優(yōu)先級是無法去手動改變的,只有通過改變nice值去間接的調(diào)整進(jìn)程優(yōu)先級。如果一個進(jìn)程運(yùn)行的太慢了,你可以通過指定一個較低的nice值去為它分配更多的CPU資源。當(dāng)然,這意味著其他的一些進(jìn)程將被分配更少的CPU資源,運(yùn)行更慢一些。Linux支持nice值的范圍是19(低優(yōu)先級)到-20(高優(yōu)先級),默認(rèn)的值是0。如果需要改變一個進(jìn)程的nice值為負(fù)數(shù)(高優(yōu)先級),必須使用su命令登陸到root用戶。下面是一些調(diào)整nice值的命令示例,

以nice值-5開始程序xyz

#nice –n -5 xyz

改變已經(jīng)運(yùn)行的程序的nice值

#renice level pid

將pid為2500的進(jìn)程的nice值改為10

#renice 10 2500

僵尸進(jìn)程

當(dāng)一個進(jìn)程被結(jié)束,在它結(jié)束之前通常需要用一些時間去完成所有的任務(wù)(比如關(guān)閉打開的文件),在一個很短的時間里,這個進(jìn)程的狀態(tài)為僵尸狀態(tài)。在進(jìn)程完成所有關(guān)閉任務(wù)之后,會向父進(jìn)程提交它關(guān)閉的信息。有些情況下,一個僵尸進(jìn)程不能關(guān)閉它自己,這時這個進(jìn)程狀態(tài)就為z(zombie)。不能使用kill命令殺死僵尸進(jìn)程,因?yàn)樗呀?jīng)標(biāo)志為“dead”。如果你無法擺脫一個僵尸進(jìn)程,你可以殺死它的父進(jìn)程,這個僵尸進(jìn)程也就消失了。然而,如果父進(jìn)程是init進(jìn)程,你不能殺死init進(jìn)程,因?yàn)閕nit是一個重要的系統(tǒng)進(jìn)程,這種情況下你只能通過一次重新啟動服務(wù)器來擺脫僵尸進(jìn)程。也必須分析應(yīng)用為什么會導(dǎo)致僵死?

三、iostat

iostat是sysstat包的一部分。Iostat顯示自系統(tǒng)啟動后的平均CPU時間(與uptime類似),它也可以顯示磁盤子系統(tǒng)的使用情況,iostat可以用來監(jiān)測CPU利用率和磁盤利用率。

CentOS命令行性能檢測工具有哪些

CPU利用率分四個部分:

引用

%user:user level(應(yīng)用)的CPU占用率情況

%nice:加入nice優(yōu)先級的user level的CPU占用率情況

%sys:system level(內(nèi)核)的CPU占用情況

%idle:空閑的CPU資源情況

磁盤占用率有下面幾個部分:

引用

Device:塊設(shè)備名

Tps:設(shè)備每秒進(jìn)行傳輸?shù)臄?shù)量(每秒的I/O請求)。多個單獨(dú)的I/O請求可以被組成一個傳輸操作,因?yàn)橐粋€傳輸操作可以是不同的容量。

Blk_read/s, Blk_wrtn/s:該設(shè)備每秒讀寫的塊的數(shù)量。塊可能為不同的容量。

Blk_read, Blk_wrtn:自系統(tǒng)啟動以來讀寫的塊設(shè)備的總量。

塊的大小

塊可能為不同的容量。塊的大小一般為1024、2048、4048byte??赏ㄟ^tune2fs或dumpe2fs獲得:

引用

[root@rfgz ~]# tune2fs -l /dev/hda1|grep 'Block size'

Block size:               4096

[root@rfgz ~]# dumpe2fs -h /dev/hda1|grep 'Block size'

dumpe2fs 1.35 (28-Feb-2004)

Block size:               4096

四、Vmstat

Vmstat命令提供了對進(jìn)程、內(nèi)存、頁面I/O塊和CPU等信息的監(jiān)控,vmstat可以顯示檢測結(jié)果的平均值或者取樣值,取樣模式可以提供一個取樣時間段內(nèi)不同頻率的監(jiān)測結(jié)果。

CentOS命令行性能檢測工具有哪些

注:在取樣模式中需要考慮在數(shù)據(jù)收集中可能出現(xiàn)的誤差,將取樣頻率設(shè)為比較低的值可以盡可能的減小誤差的影響。

下面介紹一下各列的含義

引用

·process(procs)

r:等待運(yùn)行時間的進(jìn)程數(shù)量

b:處在不可中斷睡眠狀態(tài)的進(jìn)程

w:被交換出去但是仍然可以運(yùn)行的進(jìn)程,這個值是計算出來的

·memoryswpd:虛擬內(nèi)存的數(shù)量

free:空閑內(nèi)存的數(shù)量

buff:用做緩沖區(qū)的內(nèi)存數(shù)量

·swap

si:從硬盤交換來的數(shù)量

so:交換到硬盤去的數(shù)量

·IO

bi:向一個塊設(shè)備輸出的塊數(shù)量

bo:從一個塊設(shè)備接受的塊數(shù)量

·system

in:每秒發(fā)生的中斷數(shù)量, 包括時鐘

cs:每秒發(fā)生的context switches的數(shù)量

·cpu(整個cpu運(yùn)行時間的百分比)

us:非內(nèi)核代碼運(yùn)行的時間(用戶時間,包括nice時間)

sy:內(nèi)核代碼運(yùn)行的時間(系統(tǒng)時間)

id:空閑時間,在Linux 2.5.41之前的內(nèi)核版本中,這個值包括I/O等待時間;

wa:等待I/O操作的時間,在Linux 2.5.41之前的內(nèi)核版本中這個值為0

Vmstat命令提供了大量的附加參數(shù),下面列舉幾個十分有用的參數(shù):

引用

·m:顯示內(nèi)核的內(nèi)存利用率

·a:顯示內(nèi)存頁面信息,包括活躍和不活躍的內(nèi)存頁面

·n:顯示報頭行,這個參數(shù)在使用取樣模式并將命令結(jié)果輸出到一個文件時非常有用。例如root#vmstat –n 2 10以2秒的頻率顯示10輸出結(jié)果

·當(dāng)使用-p {分區(qū)}時,vmstat提供對I/O結(jié)果的統(tǒng)計

CentOS命令行性能檢測工具有哪些

CentOS命令行性能檢測工具有哪些

五、ps和pstree

ps和pstree命令是系統(tǒng)分析最常用的基本命令,ps命令提供了一個正在運(yùn)行的進(jìn)程的列表,列出進(jìn)程的數(shù)量取決于命令所附加的參數(shù)。例如ps –A 命令列出所有進(jìn)程和它們相應(yīng)的進(jìn)程ID(PID),進(jìn)程的PID是使用其他一些工具之前所必須了解的,例如pmap或者renice。

在運(yùn)行java應(yīng)用的系統(tǒng)上,ps –A 命令的輸出很容易就會超過屏幕的顯示范圍,這樣就很難得到所有進(jìn)程的完整信息。這時,使用pstree命令可以以樹狀結(jié)構(gòu)來顯示所有的進(jìn)程信息并且可以整合子進(jìn)程的信息。Pstree命令對分析進(jìn)程的來源十分有用。

CentOS命令行性能檢測工具有哪些

六、Numastat

隨著NUMA架構(gòu)的不斷發(fā)展,例如eServer xSeries 445及其后續(xù)產(chǎn)品eServer xSeries 460,現(xiàn)在NUMA架構(gòu)已經(jīng)成為了企業(yè)級數(shù)據(jù)中心的主流。然而,NUMA架構(gòu)在性能調(diào)優(yōu)方面面臨了新的挑戰(zhàn),例如內(nèi)存分配的問題在NUMA系統(tǒng)之前并沒人感興趣,而Numastat命令提供了一個監(jiān)測NUMA架構(gòu)的工具。Numastat命令提供了本地內(nèi)存與遠(yuǎn)程內(nèi)存使用情況的對比和各個節(jié)點(diǎn)的內(nèi)存使用情況。Numa_miss列顯示分配失敗的本地內(nèi)存,numa_foreign列顯示分配遠(yuǎn)程內(nèi)存(訪問速度慢)信息,過多的調(diào)用遠(yuǎn)程內(nèi)存將增加系統(tǒng)的延遲從而影響整個系統(tǒng)的性能。使運(yùn)行在一個節(jié)點(diǎn)上的進(jìn)程都訪問本地內(nèi)存將極大的改善系統(tǒng)的性能。

CentOS命令行性能檢測工具有哪些

※我使用的系統(tǒng)不支持NUMA架構(gòu),此圖為原文檔截圖。

七、sar

sar程序也是sysstat安裝包的一部分。sar命令用于收集、報告和保存系統(tǒng)的信息。Sar命令由三個應(yīng)用組成:sar,用與顯示數(shù)據(jù);sa1和sa2,用于收集和存儲數(shù)據(jù)。默認(rèn)情況下,系統(tǒng)會在crontab中加入自動收集和分析的操作:

引用

[root@rfgz ~]# cat /etc/cron.d/sysstat

# run system activity accounting tool every 10 minutes

*/10 * * * * root /usr/lib/sa/sa1 1 1

# generate a daily summary of process accounting at 23:53

53 23 * * * root /usr/lib/sa/sa2 -A

sar命令所生成的數(shù)據(jù)保存在/var/log/sa/目錄下,數(shù)據(jù)按照時間保存,可以根據(jù)時間來查詢相應(yīng)的性能數(shù)據(jù)。

你也可以使用sar在命令行下得到一個實(shí)時的執(zhí)行結(jié)果,收集的數(shù)據(jù)可以包括CPU利用率、內(nèi)存頁面、網(wǎng)絡(luò)I/O等等。下面的命令表示用sar執(zhí)行5次,間隔時間為3秒:

CentOS命令行性能檢測工具有哪些

八、free

free命令顯示系統(tǒng)的所有內(nèi)存的使用情況,包括空閑內(nèi)存、被使用的內(nèi)存和交換內(nèi)存空間。Free命令顯示也包括一些內(nèi)核使用的緩存和緩沖區(qū)的信息。

當(dāng)使用free命令的時候,需要記住linux的內(nèi)存結(jié)構(gòu)和虛擬內(nèi)存的管理方法,比如空閑內(nèi)存數(shù)量的限制,還有swap空間的使用并不標(biāo)志一個內(nèi)存瓶頸的出現(xiàn)。

CentOS命令行性能檢測工具有哪些

Free命令有用的參數(shù):

引用

·-b,-k,-m和-g分別按照bytes, kilobytes, megabytes, gigabytes顯示結(jié)果。

·-l區(qū)別顯示low和high內(nèi)存

·-c {count}顯示free輸出的次數(shù)

九、Pmap

pmap命令顯示一個或者多個進(jìn)程使用內(nèi)存的數(shù)量,你可以用這個工具來確定服務(wù)器上哪個進(jìn)程占用了過多的內(nèi)存從而導(dǎo)致內(nèi)存瓶頸。

CentOS命令行性能檢測工具有哪些

十、Strace

strace截取和記錄進(jìn)程的系統(tǒng)調(diào)用信息,還包括進(jìn)程接受的命令信號。這是一個有用的診斷和調(diào)試工具,系統(tǒng)管理員可以通過strace來解決程序上的問題。

命令格式,需要指定需要監(jiān)測的進(jìn)程ID。這個多為開發(fā)人員使用。

strace -p <pid>

十一、ulimit

可以通過ulimit來控制系統(tǒng)資源的使用。請看以前的日志:使用ulimit和proc去調(diào)整系統(tǒng)參數(shù)

十二、Mpstat

mpstat命令也是sysstat包的一部分。Mpstat命令用于監(jiān)測一個多CPU系統(tǒng)中每個可用CPU的情況。Mpstat命令可以顯示每個CPU或者所有CPU的運(yùn)行情況,同時也可以像vmstat命令那樣使用參數(shù)進(jìn)行一定頻率的采樣結(jié)果的監(jiān)測。

CentOS命令行性能檢測工具有哪些

“CentOS命令行性能檢測工具有哪些”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!

網(wǎng)站題目:CentOS命令行性能檢測工具有哪些-創(chuàng)新互聯(lián)
分享路徑:http://muchs.cn/article28/pshjp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供商城網(wǎng)站、網(wǎng)站建設(shè)定制網(wǎng)站、自適應(yīng)網(wǎng)站、微信小程序、Google

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)