學習Linux效能優化實戰 1

2021-09-17 08:55:05 字數 1529 閱讀 1535

程序排程

軟中斷測試工具

最近在極客時間上面發現了倪鵬飛老師的linux效能優化實戰,自己感覺講得很好,有興趣的朋友可以去極客時間上面訂閱。部落格是自己總結學習到的一些命令,記錄下來,以備後面使用。侵刪。

uptime :用來看系統過去的 1 5 15 分鐘的平均負載。

mpstat -p all interval count

這個命令主要是用來看cpu的統計資訊,可以看到指定的cpu,也可以看到全部的cpu的情況。

interval是間隔時間,count是輸出幾次。

具體可以man mpstat

pidstat -u interval count

這個命令主要是用來看系統的程序的統計資訊

interval是間隔時間,count是輸出幾次。

上面幾個命令,除了uptime,其他是是要安裝stress包和sysstat包,最好把包都upgrade到較新的版本,新的版本能支援更多的選項。

老問題,主要的重點是程序context的切換的效能損耗,還有就是中斷處理程式也是乙個程序,也會造成context的切換。

pidstat -w 會出現cswch和 nvcswch 乙個是自願切換,另外乙個是非自願切換

自願切換:程序沒有獲取相關資源切換。

非自願切換:cpu時間片到期。

pidstat -t 可以打出程序下面的執行緒運**況。

pidstat -p pid 指定列印pid的程序相關資訊。

vmstat :給出系統一系列的統計資訊,包括中斷數,記憶體,context切換數等等

/proc/interrupts : 硬中斷運**況

/proc/softirqs:軟中斷運**況

這個命令說是內建的,但是在一些特定的系統上面還是需要自己安裝,使用包管理器來安裝perf,會得到包名稱的提示,實在不行就stack overflow。

這個命令是linux的效能分析工具,裡面有一系列的command,具體還是要man看。

跟pidstat工具在一起的工具還有乙個sar。

sar -n dev 2

這個命令可以每兩秒看到所有的網路介面上面的資料報的傳送量和接收量。

stress:使用死迴圈或者sysc()函式來模擬cpu密集型應用或者io密集型應用,也可以模擬分配記憶體。

具體的使用方法可以 man stress。

stress --cpu number --timeout time

stress --io number --timeout time

上面的number都是程序個數。

sysbench : 基準測試工具

LinuxIO效能優化實戰學習筆記

以下內容來自極客課程,如對您有幫助,詳細課程請見海報 1.檔案系統 為了方便管理,linux 檔案系統為每個檔案都分配兩個資料結構,索引節點 index node 和目錄項 directory entry 它們主要用來記錄檔案的元資訊和目錄結構。2.slab cache cached sreclai...

最新Linux效能優化實戰課程教學

開篇詞 別再讓linux效能問題成為你的絆腳石 01 如何學習linux效能優化?02 基礎篇 到底應該怎麼理解 平均負載 03 基礎篇 經常說的 cpu 上下文切換是什麼意思?上 04 基礎篇 經常說的 cpu 上下文切換是什麼意思?下 05 基礎篇 某個應用的cpu使用率居然達到100 我該怎麼...

Linux效能優化實戰(一) 平均負載

一 什麼是平均負載 正確定義 單位時間內,系統中處於可執行狀態和不可中斷狀態的平均程序數。錯誤定義 單位時間內的cpu使用率。可執行狀態的程序 正在使用cpu或者正在等待cpu的程序,即ps aux命令下stat處於r狀態的程序 不可中斷狀態的程序 處於核心態關鍵流程中的程序,且不可被打斷,如等待硬...