CPU負(fù)載:顯示的是一段時間內(nèi)正在使用和等待使用的CPU平均任務(wù)數(shù);
查看CPU使用率和負(fù)載
對于查看負(fù)載可以使用uptime,w命令,同時top,vmstat工具也可以同時觀察CPU使用率和負(fù)載情況。
查看CPU核數(shù):
grep model name /proc/cpuinfo | wc -l
uptime命令:
命令返回信息中的load average就是關(guān)于系統(tǒng)的平均負(fù)載,里面的三個數(shù)字分別代表著1分鐘、5分鐘、15分鐘內(nèi)的系統(tǒng)平均負(fù)載。
top工具
(如果是多核CPU,1查看各個CPU詳細(xì)信息)
top工具的第一行后面的三個值,分別也是代表之前的1、5、15分鐘內(nèi)的平均負(fù)載;
第三行關(guān)于CPU使用率各項參數(shù)的含義:(us)user:CPU在低nice值(高優(yōu)先級)用戶態(tài)所占用的時間;(大部分CPU時間都在執(zhí)行此類程序)
(sy)sytem:CPU處于內(nèi)核所占用的時間,操作系統(tǒng)通過系統(tǒng)調(diào)用從用戶態(tài)陷入內(nèi)核態(tài),執(zhí)行特定的服務(wù);(通常該值會比較小,當(dāng)服務(wù)器執(zhí)行的IO比較密集的時候,會比較大)
ni(nice):CPU在高nice值(低優(yōu)先級)用戶態(tài)以低優(yōu)先級運行占用的時間(nice>0);
si(softirq):系統(tǒng)處理軟中斷所消耗的時間
st(steal):在虛擬機情況下,因為虛擬機下的CPU是共享物理CPU,表明這段時間虛擬機等待hypervisor調(diào)度CPU的時間。
CPU使用率和負(fù)載指標(biāo)
首先對于CPU使用率,如果長時間處于60-80%%u7684范圍,就意味著可能服務(wù)器出現(xiàn)瓶頸。如果需要具體分析,還需要觀察是user占用率過高,還是system占用率過高。具體:
us:當(dāng)user占用率過高,通常是某些個別的進程占用了大量的CPU;
sy:當(dāng)system占用率過高,說明系統(tǒng)管理花費了大量時間,比如一些IO操作,或者部分內(nèi)核,驅(qū)動模塊;
*(其次負(fù)載指標(biāo)來說,一直存在許多爭議,我綜合了一些文章的觀點,具體是CPU負(fù)載保持在(CPU核數(shù)0.7)范圍內(nèi),這樣的負(fù)載是安全的,如果超過一定的負(fù)載(=CPU核數(shù))就可以算是意味著over load。)**
內(nèi)存
內(nèi)存也叫內(nèi)存存儲器,作用是暫時存放CPU中的運算數(shù)據(jù),以及與硬盤等外部存儲器交換的數(shù)據(jù)。
物理內(nèi)存:通過物理內(nèi)存條獲得的內(nèi)存空間,即隨機存儲器(RAM),與CPU直接交換數(shù)據(jù)的內(nèi)部存儲器,也叫主存
虛擬內(nèi)存:計算機的一種內(nèi)存管理技術(shù),使應(yīng)用程序認(rèn)為擁有可連續(xù)使用的內(nèi)存(完整的地址空間),實際上,被分割為多個物理內(nèi)存碎片,以及部分暫時存儲在外部磁盤存儲器上,在需要時進行數(shù)據(jù)交換。
Swap分區(qū):在系統(tǒng)的物理內(nèi)存不夠用的時候,將物理內(nèi)存中的一部分空間釋放出來,供當(dāng)前運行的程序使用,這些被釋放的空間可能來自于很長時間沒有操作的程序,釋放的空間被臨時保存到Swap空間中,等到那些程序需要運行的時候,在從Swap分區(qū)中恢復(fù)保存的數(shù)據(jù)到內(nèi)存。
查看內(nèi)存情況
free命令:
free命令可以顯示Linux系統(tǒng)中的空閑,已用的物理內(nèi)存,Swap分區(qū):
total:總的可用空間,used:已使用空間;free:空閑可用空間;shared:共享使用物理內(nèi)存空間;available:可以被應(yīng)用程序使用的物理內(nèi)存空間。
buffers就是即將要寫入到磁盤中,cache使從磁盤中讀取出來。buff/cache:被buff和cache使用的物理內(nèi)存空間
free是真正未被使用到的物理內(nèi)存空間,avaiable是從應(yīng)用程序角度看,如果應(yīng)用程序需要使用到內(nèi)存,可以從buff/cache中回收內(nèi)存滿足應(yīng)用程序的請求。
vmstat工具:
top工具:
(展示不同進程的內(nèi)存占用情況)
磁盤I/O
對于磁盤I/O訪問負(fù)載過高,通常會出現(xiàn)系統(tǒng)操作,應(yīng)用服務(wù)無法響應(yīng)等問題,通??梢酝ㄟ^top、iostat,iotop,ps,lsof工具定位問題。
top命令:
(wa:表示IO等待所占用的CPU時間占比,高過30%%u65F6IO壓力過高)
iostat(額外安裝sysstat包)
(當(dāng)util接近100%%u65F6,說明產(chǎn)生的I/O請求太多,滿負(fù)荷運行。)
iotop(額外安裝iotop包,查看那些進程占用的IO過高)
網(wǎng)絡(luò)
測試有關(guān)網(wǎng)絡(luò)性能,一般從可用性、響應(yīng)時間、網(wǎng)絡(luò)利用率、網(wǎng)絡(luò)吞吐量,網(wǎng)絡(luò)帶寬容量這幾個方面。而常用的工具則有(ping、netstat、sar、tcpdump、iptraf)
iptraf(需要額外安裝iptraf包)
查看制定以太網(wǎng)卡的吞吐量情況:
iptraf-ng -d eth0
sar(需要額外安裝sysstat)
查看網(wǎng)卡性能:
sar -n DEV 1 100
參數(shù)含義:
IFACELAN接口
rxpck/s每秒鐘接收的數(shù)據(jù)包
txpck/s每秒鐘發(fā)送的數(shù)據(jù)包
rxbyt/s或者rxkB/s每秒鐘接收的字節(jié)數(shù)(上傳速度,網(wǎng)卡入流量)
txbyt/s或者txkB/s每秒鐘發(fā)送的字節(jié)數(shù)(下載速度,網(wǎng)卡出流量)
rxcmp/s每秒鐘接收的壓縮數(shù)據(jù)包
txcmp/s每秒鐘發(fā)送的壓縮數(shù)據(jù)包
rxmcst/s每秒鐘接收的多播數(shù)據(jù)包
服務(wù)器性能分析軟件
參考鏈接
Linux下的CPU使用率與服務(wù)器負(fù)載的關(guān)系與區(qū)別:
https://www.jianshu.com/p/e134b8498413
服務(wù)器性能指標(biāo)(一)——負(fù)載(Load)分析及問題排查:
https://www.hollischuang.com/archives/2409
服務(wù)器性能指標(biāo)(三)——內(nèi)存使用分析及問題排查:
https://www.hollischuang.com/archives/2642
Linux服務(wù)器I/O過高原因及解決方法:
https://www.linuxidc.com/Linux/2016-09/134813.htm
查看linux服務(wù)器硬盤IO讀寫負(fù)載:
https://www.cnblogs.com/mfryf/archive/2012/03/12/2392012.html
更多關(guān)于云服務(wù)器,域名注冊,虛擬主機的問題,請訪問西部數(shù)碼官網(wǎng):m.ps-sw.cn