性能優化核心指標:吞吐和延遲
Linux Performance Tools:
linux
➜ ~ uptime 11:32 up 5 days, 19:45, 2 users, load averages: 2.01 1.86 2.04 11:32 //當前時間 up 5 days, 19:45 //系統運行時間 2 users //正在登陸用戶數 load averages: 2.01 1.86 2.04 //過去 1 分鐘、5 分鐘、15 分鐘的平均負載
System load averages is the average number of processes that are either in a runnable or uninterruptable state.性能優化
//查看linux系統的核數 [root@k8s ~]# grep 'model name' /proc/cpuinfo | wc -l 統計文件行數 wc -l
根據核數咱們能夠判斷平均負載的狀況,平均負載是指單位時間內,處於可運行狀態和不可中斷狀態的進程數。因此,它不只包括了正在使用 CPU 的進程,還包括等待 CPU 和等待 I/O 的進程。函數
CPU 使用率,是單位時間內 CPU 繁忙狀況的統計,跟平均負載並不必定徹底對應。好比:工具
stress 是一個 Linux 系統壓力測試工具,經常使用來異常進程模擬平均負載升高的場景。性能
sysstat 包含了經常使用的 Linux 性能工具,用來監控和分析系統的性能。咱們的案例會用到這個包的兩個命令 mpstat 和 pidstat。測試
//經過調用 sqrt 函數計算由 rand 函數產生的隨機數的平方根 stress -c 4 //調用 sync 函數將內存上的內容寫到硬盤上,消耗IO資源 stress -i 4 // 監測所有CPU,每5s輸出一次數據 mpstat -P ALL 5 // 5s爲採樣週期,輸出進程信息 pidstat 5