首頁  >  文章  >  運維  >  檢查Linux效能的命令是什麼

檢查Linux效能的命令是什麼

WBOY
WBOY轉載
2023-05-20 15:37:072406瀏覽

1.uptime

檢查Linux效能的命令是什麼

這個指令可以快速查看機器的負載狀況。在Linux系統中,這些資料表示等待CPU資源的進程和阻塞在不可中斷IO進程(進程狀態為D)的數量。這些數據可以讓我們對系統資源使用有一個宏觀的了解。

指令的輸出分別表示1分鐘、5分鐘、15分鐘的平均負載情況。透過這三個數據,可以了解伺服器負載是在趨於緊張還是區域緩解。如果1分鐘平均負載很高,而15分鐘平均負載很低,表示伺服器正在命令高負載狀況,需要進一步排除CPU資源都消耗在哪裡。反之,如果15分鐘平均負載很高,1分鐘平均負載較低,則有可能是CPU資源緊張時刻已經過去。如果近1分鐘的平均負載遠高於15分鐘的負載情況,那麼我們需要用vmstat,mpstat指令進行排查。

2.dmesg|tail

檢查Linux效能的命令是什麼

dmesg這條指令用來查看開機訊息

dmesg|tail該指令會輸出系統日誌的最後10行

3.vmstat1

檢查Linux效能的命令是什麼

#每行會輸出一些系統核心指標,這些指標可以讓我們更詳細的了解系統狀態。後面跟的參數2,表示每兩秒輸出一次統計信息,表頭提示了每一列的含義,這幾介紹一些和性能調優相關的列:

r:等待在CPU資源的進程數。這個資料比平均負載更能體現CPU負載情況,資料中不包含等待IO的進程。如果這個數值大於機器CPU核數,那麼機器的CPU資源已經飽和。

free:系統可用記憶體數(以千位元組為單位),如果剩餘記憶體不足,也會導致系統效能問題。以下介紹到的free指令,可以更詳細的了解系統記憶體的使用情況。

si,so:交換區寫入和讀取的數量。如果這個資料不是0,表示系統已經在使用交換區(swap),機器實體記憶體已經不足。

us,sy,id,wa,st:這些都代表了CPU時間的消耗,它們分別表示使用者時間(user)、系統(核心)時間(sys)、空閒時間(idle)、IO等待時間(wait)和被偷走的時間(stolen,一般被其他虛擬機器消耗)。

上述這些CPU時間,可以讓我們很快了解CPU是否出於繁忙狀態。一般情況下,如果使用者時間和系統時間相加非常大,CPU出於忙於執行指令。如果IO等待時間很長,那麼系統的瓶頸可能在磁碟IO。

4.mpstat-PALL1

檢查Linux效能的命令是什麼

該指令可以顯示每個CPU的佔用情況,如果有一個CPU佔用率特別高,那麼有可能是一個單線程應用程式引起的。

5.pidstat1

檢查Linux效能的命令是什麼

pidstat指令輸出程序的CPU佔用率,該指令會持續輸出,並且不會覆寫先前的數據,可以方便觀察系統動態。

6.iostat-xz1

檢查Linux效能的命令是什麼

iostat指令主要用於檢視機器磁碟IO情況。此指令輸出的列,主要意義是:

r/s,w/s,rkB/s,wkB/s:分別表示每秒讀寫次數和每秒讀寫資料量(千字節)。讀寫量過大,可能會造成效能問題。

await:IO操作的平均等待時間,單位是毫秒。這是應用程式在和磁碟互動時,需要消耗的時間,包括IO等待和實際操作的耗時。如果這個數值過大,可能是硬體設備遇到了瓶頸或故障。

avgqu-sz:向裝置發出的請求平均數量。如果這個數值大於1,可能是硬體設備已經飽和(部分前端硬體設備支援並行寫入)。

%util:設備利用率。這個數值表示設備的繁忙程度,經驗值是如果超過60,可能會影響IO性能(可以參考IO操作平均等待時間)。如果到達100%,表示硬體設備已經飽和。

如果顯示的是邏輯設備的數據,那麼設備利用率不代表後端實際的硬體設備已經飽和。值得注意的是,即使IO效能不理想,也不一定意味著這應用程式效能會不好,可以利用諸如預先讀取、寫入快​​取等策略來提升應用程式效能。

7.free-h

檢查Linux效能的命令是什麼

#

free指令可用於查看系統記憶體的使用情況,最後兩列分別表示用於IO快取的記憶體數,和用於檔案系統頁快取的記憶體數。要注意的是,第二行-/ buffers/cache,看起來快取佔了大量記憶體空間。這是Linux系統的內存使用策略,盡可能的利用內存,如果應用程式需要內存,這部分內存會立即被回收並分配給應用程式。因此,這部分記憶體一般也被當成可用記憶體。

如果可用記憶體非常少,系統可能會動用交換區(如果配置了的話),這樣會增加IO開銷(可以在iostat指令中提現),降低系統效能。

8.sar-nDEV1

檢查Linux效能的命令是什麼

sar指令在這裡可以查看網路設備的吞吐率。在檢查效能問題時,可以透過網路設備的吞吐量,判斷網路設備是否已經飽和。如範例輸出中,eth0網卡設備,吞吐率只有大概在0.39Mbytes/s.

9.sar-nTCP,ETCP1

檢查Linux效能的命令是什麼

sar指令在這裡用於查看TCP連線狀態,其中包括:

active/s:每秒本地發起的TCP連線數,既透過connect呼叫所建立的TCP連線;

passive/s:每秒遠端發起的TCP連線數,即透過accept呼叫所建立的TCP連線;

retrans/s:每秒TCP重傳數量;

TCP連線數可以用來判斷效能問題是否由於建立了過多的連接,進一步可以判斷是主動發起的連接,還是被動接受的連接。 TCP重傳可能是因為網路環境惡劣,或是伺服器壓力過大導致丟包。

10.top

檢查Linux效能的命令是什麼

第一行是任務佇列信息,同uptime指令的執行結果一樣:第一列表示目前時間、第二列表示系統運作了多久、第三列表示目前登陸人數、最後的loadaverage表示的是系統負載(三個值分別是:1分鐘、5分鐘、15分鐘前到現在的負載平均值)

#第二列表示的是進程的訊息,很直觀。

以上是檢查Linux效能的命令是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:yisu.com。如有侵權,請聯絡admin@php.cn刪除