常用的linux系統性能查詢指令

本文彙總工作可能會使用到的linux性能查詢指令,並給出指令的實際用例與輸出解釋,本文將長期更新,限於作者水平有限,文中有描述不準確的地方歡迎指出,共同學習提高。

1、tsar指令

tsar是淘寶開發的用來收集服務器系統信息(mem、cpu、io、tcp)的工具,如下圖所示的命令可以輸出tsar的幫助信息

上圖中可以看出tsar可以監控系統的cpu使用情況、物理內存&虛擬內存的使用、TCP&UDP的ipv4使用情況、網絡傳輸情況、當前系統的io性能、進程的上下文切換情況、TCP連接的相關數據以及系統負載情況等。可以說是一個比較全的監控指令。

我們以下圖爲例介紹具體一些指標的含義;

命令中的-l表示查看實時數據,-i則指明數據顯示的時間間隔,可以看出上面的指令分別列出了內存、網絡傳輸和cpu load的情況。

mem列下描述了系統的內存使用情況,共六列,其中free表示內存的可用量,used表示內存的使用量,total表示內存的總量,util是利用率。buff和cache是兩個比較容易混淆的指標,其中buff是用於存放要輸出到disk(塊設備)的數據,而cache存放從disk上讀出的數據。

 traffic描述了網絡傳輸情況bytin是輸入字節數、bytout是輸出字節數、pktin/pktout描述的是峯值輸入/輸出字節、pkterr/pktdrp描述的出現錯誤的傳輸數。

load列描述系統負載情況,load1、load5&load15分別表示過去1分鐘、5分鐘、15分鐘的系統平均負載,runq是運行隊列的平均長度,plit是進程列表中進程&線程的數量。

tsar的源碼地址在這裏:http://code.taobao.org/p/tsar/src/trunk/,有功夫會分析一下tsar的源碼

2、iostat命令

顯示磁盤io相關的數據,一般的使用方式示例:iostat -x 1

其中1表示每一秒刷新一次,命令輸出結果如下圖:


其中比較關注的是最後一列%util,表示一秒之中有百分之多少的時間用於IO操作,如果%util接近100%,表示I/O請求太多,I/O系統已經滿負荷。

3、vmstat

查看服務器的狀態,結果較爲全面,包括了CPU使用率,內存使用,虛擬內存交換情況和io讀寫等等。

使用參數包括兩個數字,第一個是採樣間隔,單位是s,第二個是採樣次數,示例如下:



發佈了54 篇原創文章 · 獲贊 20 · 訪問量 15萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章