linux服務器性能查看
################### cpu性能查看 ############################################################
1、查看物理cpu個數:
cat /proc/cpuinfo |grep "physical id"|sort|uniq|wc -l
2、查看每個物理cpu中的core個數:
cat /proc/cpuinfo |grep "cpu cores"|wc -l
3、邏輯cpu的個數:
cat /proc/cpuinfo |grep "processor"|wc -l
物理cpu個數*核數=邏輯cpu個數(不支持超線程技術的情況下)
########################### 內存查看 ################################################################
1、查看內存使用情況:
free -m
total used free shared buffers cached
Mem: 3949 2519 1430 0 189 1619
-/+ buffers/cache: 710 3239
Swap: 3576 0 3576
total:內存總數
used:已經使用的內存數
free:空閒內存數
shared:多個進程共享的內存總額
- buffers/cache:(已用)的內存數,即used-buffers-cached
+ buffers/cache:(可用)的內存數,即free+buffers+cached
Buffer Cache用於針對磁盤塊的讀寫;Page Cache用於針對文件inode的讀寫,這些Cache能有效地縮短I/O系統調用的時間。
對於操作系統來說free/used是系統可用/佔用的內存;而對於應用程序來說-/+ buffers/cache是可用/佔用內存,因爲buffers/cache很快就會被使用。我們工作時候應該從應用角度來看。
################# 硬盤查看 ##########################################################################
1、查看硬盤及分區信息:
fdisk -l
2、查看文件系統的磁盤空間佔用情況:
df -h
3、查看硬盤的I/O性能(每隔一秒顯示一次,顯示5次):
iostat -x 1 5
iostat是含在套裝systat中的,可以用yum -y install systat來安裝。
常關注的參數:
如果%util接近100%,說明產生的I/O請求太多,I/O系統已經滿負荷,該磁盤可能存在瓶頸。
如果idle小於70%,I/O的壓力就比較大了,說明讀取進程中有較多的wait。
4、查看linux系統中某目錄的大小:
du -sh /root
如發現某個分區空間接近用完,可以進入該分區的掛載點,用以下命令找出佔用空間最多的文件或目錄,然後按照從大到小的順序,找出系統中佔用最多空間的前10個文件或目錄:
du -cksh *|sort -rn|head -n 10
############################################ 查看平均負載 ####################################
有時候系統響應很慢,但又找不到原因,這時就要查看平均負載了,看它是否有大量的進程在排隊等待。
最簡單的命令:
uptime
查看過去的1分鐘、5分鐘和15分鐘內進程隊列中的平均進程數量。
還有動態命令:
top
我們只關心以下部分:
top - 21:33:09 up 1:00, 1 user, load average: 0.00, 0.01, 0.05
如果每個邏輯cpu當前的活動進程不大於3,則系統性能良好;
如果每個邏輯cpu當前的活動進程不大於4,表示可以接受;
如果每個邏輯cpu當前的活動進程大於5,則系統性能問題嚴重。
一般計算方法:負載值/邏輯cpu個數
還可以結合vmstat命令來判斷系統是否繁忙,其中:
procs
r:等待運行的進程數。
b:處在非中斷睡眠狀態的進程數。
w:被交換出去的可運行的進程數。
memeory
swpd:虛擬內存使用情況,單位爲KB。
free:空閒的內存,單位爲KB。
buff:被用來作爲緩存的內存數,單位爲KB。
swap
si:從磁盤交換到內存的交換頁數量,單位爲KB。
so:從內存交換到磁盤的交換頁數量,單位爲KB。
io
bi:發送到塊設備的塊數,單位爲KB。
bo:從塊設備接受的塊數,單位爲KB。
system
in:每秒的中斷數,包括時鐘中斷。
cs:每秒的環境切換次數。
cpu
按cpu的總使用百分比來顯示。
us:cpu使用時間。
sy:cpu系統使用時間。
id:閒置時間。
標準情況下r和b的值應該爲:
r<5,b=0
假設輸出的信息中:
如果r經常大於3或4,且id經常少於50,表示cpu的負荷過重。
pi、po長期不等於0,表示內存不足。
bi經常不等於0,且在b中的隊列大於2或3,表示io的性能不好。
################################# 其他參數 #####################################
查看內核版本號:
uname -a
簡化命令:
uname -r
查看系統是32位還是64位的:
file /sbin/init
查看發行版:
cat /etc/issue
或lsb_release -a
查看系統已載入的相關模塊:
lsmod
查看pci設置:
lspci