Linux系統效能分析

來源:互聯網
上載者:User

標籤:

http://c.biancheng.net/cpp/html/2782.htmlLinux系統效能分析

這篇教程的目的是向大家介紹一些免費的系統效能分析工具(命令),使用這些工具可以監控系統資源使用方式,便於發現效能瓶頸。

系統的整體效能取決於各種資源的平衡,類似木桶理論,某種資源的耗盡會嚴重阻礙系統的效能。

Linux中需要監控的資源主要有 CPU、主存(記憶體)、硬碟空間、I/O時間、網路時間、應用程式等。

影響系統效能的主要因素有:
因素 說明
使用者態CPU CPU在使用者態運行使用者程式所花費的時間,包括庫調用,但是不包括核心花費的時間。
核心態CPU CPU在核心態運行系統服務所花費的時間。所有的 I/O 操作都需要調用系統服務,程式員可以通過阻塞 I/O 傳輸來影響這部分的時間。
I/O 時間和網路時間 響應 I/O 請求、處理網路連接所花費的時間。
記憶體 切換上下文和交換資料(虛擬記憶體頁匯入和匯出)花費的時間。
應用程式 程式等待啟動並執行時間——CPU正在運行其他程式,等待切換到當前程式。

說明:一般認為使用者態CPU和核心態CPU花費的時間小於70%時是良好狀態。

下面的命令可以用來監控系統效能並作出相應調整:
命令 說明
nice 啟動程式時指定進程優先順序。
renice 調整現有進程的優先順序。
netstat 顯示各種網路相關資訊,包括網路連接情況、路由表、介面狀態(Interface Statistics)、masquerade 串連、多播成員 (Multicast Memberships)等。實際上,netstat 用於顯示與IP、TCP、UDP和ICMP協議相關的統計資料,一般用於檢驗本機各連接埠的網路連接情況。
time 檢測一個命令已耗用時間以及資源(CPU、記憶體、I/O等)使用方式。
uptime 查看系統負載情況。
ps 查看系統中進程的資源使用方式(瞬時狀態,不是動態監控)。
vmstat 報告虛擬記憶體使用方式。
gprof 精確剖析器的效能,能給出函數調用時間、調用次數、調用關係等。
top 即時監控系統中各個進程資源的資源使用方式。

常用命令組合:
    • vmstat、sar、mpstat檢測是否存在CPU瓶頸;
    • vmstat、free檢測是否存在記憶體瓶頸;
    • iostat檢測是否存在磁碟I/O瓶頸;
    • netstat檢測是否存在網路I/O瓶頸。

Linux系統效能分析

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.