作系統優化,必須首先要知道系統的瓶頸在哪裏,是CPU處理能力過低?仍是IO吞吐過小?本文將介紹監控系統性能的工具。緩存
top:工具
查找系統性能的瓶頸,常常使用的判別工具是top。只要在命令行輸入top,再回車,就會顯示系統如今的負載狀況。性能
top 顯示的系統信息包括運行時間、進程的數量和狀態、CPU週期的百分比和每一個進程佔用的存儲空間、每一個進程運行的時間,以及大量的其它信息。進程是按使用資源的多少來排列的,顯示每5秒鐘自動更新一次。在顯示過程當中,也能夠按下空格鍵手動更新顯示。在查找並解決系統性能故障時,這些信息是至關有用的。優化
你們能夠看到顯示的系統狀況,運行中的進程有正在使用的top程序,140個進程,1個運行,其餘都是休眠,這裏還能夠看到內存和swap的使用狀況。ui
/proc/cpuinfo:命令行
經過查看/proc/cpuinfo文件,能夠獲得CPU的型號,主頻,緩存等信息。隊列
free:進程
使用free命令能夠查看系統中內存空間的大小。其中,Mem行中的total欄顯示了當前Linux正在使用的RAM總量。used欄顯示的是被佔用的內存空間,但Mem行與這一欄結合並不能產生最好的分析結果,由於其中包含了Linux分配給磁盤緩衝區的一部分分區。在大多數系統中,used欄顯示的值和total欄的值至關。然而,咱們能夠覈對used欄、-/+buffers/cache行對應的值來查看有多少內存處於使用狀態(used欄、 Swap欄對應的數值)。這一部分是做爲內存來用的磁盤,而磁盤速度比內存慢,因此優先使用物理內存,交換內存則使用得較少。內存
vmstat:資源
獲取內存、swap等系統數據信息。用法是vmstat delay count,其中delay表示時間間隔,count表示次數。例如,# vmstat 3 4 就表示3秒得到一次IO統計,總共統計4次。
sar:
sar命令功能很強大,可是參數比較多,用法不少,有時判斷一個問題,須要幾個sar命令結合起來使用,好比,懷疑CPU存在瓶頸,可用sar -u 和sar -q來看,懷疑I/O存在瓶頸,可用sar -b、sar -u和
sar-d來看:
sar參數對照表:
-A 全部的報告總和
-a 文件讀,寫報告
-B 報告附加的buffer cache使用狀況
-b buffer cache使用狀況
-c 系統調用使用報告
-d 硬盤使用報告
-g 有關串口I/O狀況
-h 關於buffer使用統計數字
-m IPC消息和信號燈活動
-n 命名cache
-p 調頁活動
-q 運行隊列和交換隊列的平均長度
-R 報告進程的活動
-r 沒有使用的內存頁面和硬盤塊
-u CPU利用率
-v 進程,i節點,文件和鎖表狀態
-w 系統交換活動
-y TTY設備活動
hdparm:
該命令主要是修改IDE硬盤屬性的,所以在如今的主流的SAS硬盤或者SCSI硬盤中,應用的不多了。可是用戶也能夠經過它,得到硬盤和緩衝的讀寫速度。若是用戶對於本身的應用程序讀寫速度有懷疑,就能夠經過它來排斥硬盤問題。
# hdparm -T /dev/sda(得到緩存讀的速率)
# hdparm -t /dev/sda (得到硬盤sda的讀的速率)