【linux系統】命令學習(三)效能統計
硬體簡介
cpu
檢視Cpu資訊:cat /proc/cpuinfo 幾核就顯示幾個processor 從0開始
檢視負載資訊:top
top
-p 只觀察一個程序的
pid 程序ID
load average 負載 3個引數分表代表 一分鐘 5分鐘 15分鐘 -----雙核伺服器,一般大於2的時候效能會很差
task 當前有多少個程序;執行狀態、休眠狀態、停止狀態、殭屍進城
%CPU(s) 使用者使用us 作業系統本身sy ni 空閒id wa hi si 虛擬機器才有的st
mem 記憶體 cache buff
buffer就是寫入到磁碟。buffer是為了提高記憶體和硬碟(或其他I/O裝置)之間的資料交換的速度而設計的。buffer將資料緩衝下來,解決速度慢和快的交接問題;速度快的需要通過緩衝區將資料一點一點傳給速度慢的區域。
例如:從記憶體中將資料往硬碟中寫入,並不是直接寫入,而是緩衝到一定大小之後刷入硬碟中。
cache就是從磁碟讀取資料然後存起來方便以後使用。cache實現資料的重複使用,速度慢的裝置需要通過快取將經常要用到的資料快取起來,快取下來的資料可以提供高速的傳輸速度給速度快的裝置。
例如:將硬碟中的資料讀取出來放在記憶體的快取區中,這樣以後再次訪問同一個資源,速度會快很多。
S 執行狀態 s停止 r執行
time 佔用當前cpu的時間片
測試系統負載
{yes > /dev/null & } && sleep 30 && ps -ef|grep yes |awk '{print@2}' | xargs kill
記憶體
free
swap 虛擬記憶體
free -m
free -h 以G的格式展示
total 總實體記憶體
used 已經使用的實體記憶體
free 沒有使用過的實體記憶體
shared 多程序共享記憶體
buff/cache 讀寫快取記憶體,這部分記憶體是當空閒來用的,當free記憶體不足時,linux核心會將此記憶體釋放
buffer 是即將要被寫入磁碟的,而cache是被從磁碟中讀出來的
available 還能被“應用程式”使用的實體記憶體
IO
需要工具為 ubuntu:sysstat iftop strace ----apt install -y
centos: sysstat epel-release iftop strace ----yum install -y yum install -y sysstat yum install -y epel-release yum install -y iftop
硬碟
寫:dd if=/dev/zero bs=1024 count=4096000 of=test.iso
讀:dd if=test.iso bs=64k | dd of=/dev/null
bs: 設定讀/寫緩衝區的位元組數
/dev/null 空裝置,是一個特殊的裝置檔案,它丟棄一切寫入其中的資料
/dev/zero 是一個特殊的檔案,當你讀它的時候,它會提供無線的空字元
iostat 1 表示1s重新整理一次
-c 只看cpu
-d 只看磁碟
網路
iftop