如何對Linux的服務器進行性能評估?如何有技術含量地開發(fā)了一個網(wǎng)頁?針對這個問題,今天小編總結這篇有關服務器性能評估的文章,希望能幫助更多想解決這個問題的朋友找到更加簡單易行的辦法。
公司主營業(yè)務:成都網(wǎng)站設計、網(wǎng)站制作、外貿營銷網(wǎng)站建設、移動網(wǎng)站開發(fā)等業(yè)務。幫助企業(yè)客戶真正實現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競爭能力。創(chuàng)新互聯(lián)是一支青春激揚、勤奮敬業(yè)、活力青春激揚、勤奮敬業(yè)、活力澎湃、和諧高效的團隊。公司秉承以“開放、自由、嚴謹、自律”為核心的企業(yè)文化,感謝他們對我們的高要求,感謝他們從不同領域給我們帶來的挑戰(zhàn),讓我們激情的團隊有機會用頭腦與智慧不斷的給客戶帶來驚喜。創(chuàng)新互聯(lián)推出香格里拉免費做網(wǎng)站回饋大家。
首先需要分清楚CPU使用率和機器負載不是相同的概念,如果CPU使用率,但是不一定代表機器負載同樣也高。所以關于CPU使用率和負載的區(qū)別:
- CPU使用率:顯示的是程序在運行期間占用的CPU百分比;
- CPU負載:顯示的是一段時間內正在使用和等待使用的CPU平均任務數(shù);
對于查看負載可以使用uptime,w命令,同時top,vmstat工具也可以同時觀察CPU使用率和負載情況。
查看CPU核數(shù):
grep "model name" /proc/cpuinfo | wc -l
命令返回信息中的load average就是關于系統(tǒng)的平均負載,里面的三個數(shù)字分別代表著1分鐘、5分鐘、15分鐘內的系統(tǒng)平均負載。
(如果是多核CPU,1查看各個CPU詳細信息)
top工具的第一行后面的三個值,分別也是代表之前的1、5、15分鐘內的平均負載;
第三行關于CPU使用率各項參數(shù)的含義:
- (us)user:CPU在低nice值(高優(yōu)先級)用戶態(tài)所占用的時間;(大部分CPU時間都在執(zhí)行此類程序)
- (sy)sytem:CPU處于內核所占用的時間,操作系統(tǒng)通過系統(tǒng)調用從用戶態(tài)陷入內核態(tài),執(zhí)行特定的服務;(通常該值會比較小,當服務器執(zhí)行的IO比較密集的時候,會比較大)
- ni(nice):CPU在高nice值(低優(yōu)先級)用戶態(tài)以低優(yōu)先級運行占用的時間(nice>0);
- si(softirq):系統(tǒng)處理軟中斷所消耗的時間
- st(steal):在虛擬機情況下,因為虛擬機下的CPU是共享物理CPU,表明這段時間虛擬機等待hypervisor調度CPU的時間。
首先對于CPU使用率,如果長時間處于60-80%的范圍,就意味著可能服務器出現(xiàn)瓶頸。如果需要具體分析,還需要觀察是user占用率過高,還是system占用率過高。具體:
- us:當user占用率過高,通常是某些個別的進程占用了大量的CPU;
- sy:當system占用率過高,說明系統(tǒng)管理花費了大量時間,比如一些IO操作,或者部分內核,驅動模塊;
*(其次負載指標來說,一直存在許多爭議,我綜合了一些文章的觀點,具體是CPU負載保持在(CPU核數(shù)0.7)范圍內,這樣的負載是安全的,如果超過一定的負載(=CPU核數(shù))就可以算是意味著over load。)**
內存也叫內存存儲器,作用是暫時存放CPU中的運算數(shù)據(jù),以及與硬盤等外部存儲器交換的數(shù)據(jù)。
- 物理內存:通過物理內存條獲得的內存空間,即隨機存儲器(RAM),與CPU直接交換數(shù)據(jù)的內部存儲器,也叫主存
- 虛擬內存:計算機的一種內存管理技術,使應用程序認為擁有可連續(xù)使用的內存(完整的地址空間),實際上,被分割為多個物理內存碎片,以及部分暫時存儲在外部磁盤存儲器上,在需要時進行數(shù)據(jù)交換。
- Swap分區(qū):在系統(tǒng)的物理內存不夠用的時候,將物理內存中的一部分空間釋放出來,供當前運行的程序使用,這些被釋放的空間可能來自于很長時間沒有操作的程序,釋放的空間被臨時保存到Swap空間中,等到那些程序需要運行的時候,在從Swap分區(qū)中恢復保存的數(shù)據(jù)到內存。
free命令可以顯示Linux系統(tǒng)中的空閑,已用的物理內存,Swap分區(qū):
- total:總的可用空間,used:已使用空間;free:空閑可用空間;shared:共享使用物理內存空間;available:可以被應用程序使用的物理內存空間。
- buffers就是即將要寫入到磁盤中,cache使從磁盤中讀取出來。buff/cache:被buff和cache使用的物理內存空間
- free是真正未被使用到的物理內存空間,avaiable是從應用程序角度看,如果應用程序需要使用到內存,可以從buff/cache中回收內存滿足應用程序的請求。
(展示不同進程的內存占用情況)
對于磁盤I/O訪問負載過高,通常會出現(xiàn)系統(tǒng)操作,應用服務無法響應等問題,通??梢酝ㄟ^top、iostat,iotop,ps,lsof工具定位問題。
(wa:表示IO等待所占用的CPU時間占比,高過30%時IO壓力過高)
(當util接近100%時,說明產(chǎn)生的I/O請求太多,滿負荷運行。)
測試有關網(wǎng)絡性能,一般從可用性、響應時間、網(wǎng)絡利用率、網(wǎng)絡吞吐量,網(wǎng)絡帶寬容量這幾個方面。而常用的工具則有(ping、netstat、sar、tcpdump、iptraf)
查看制定以太網(wǎng)卡的吞吐量情況:
iptraf-ng -d eth0
查看網(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ù)包
關于服務器性能評估就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。