生活随笔
收集整理的這篇文章主要介紹了
linux调优命令
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
一. 生產(chǎn)環(huán)境服務(wù)器變慢,診斷思路及性能評估
查看整機性能 top命令查看整機性能 load average平均1、5、15分鐘負(fù)載值相加除以3乘100%是否大于60%
系統(tǒng)性能精簡版命令uptime
查看CPU:vmstat -n 2 3第一個參數(shù)時間間隔數(shù)、第二個參數(shù)采樣次數(shù)procs r:運行和等待CPU時間片的進(jìn)程樹原則上是1核CPU運行隊列不超過2,整個系統(tǒng)運行隊列不超過總核數(shù)的2倍,否則表示系統(tǒng)壓力過大b:等待資源進(jìn)程數(shù),比如正等待磁盤I/O、網(wǎng)絡(luò)I/O等 CPU us:用戶進(jìn)程消耗CPU時間百分比,us值高,用戶進(jìn)程消耗CPU時間多,如果長期大于50%,優(yōu)化程序sy:內(nèi)核進(jìn)程消耗CPU時間百分比id:處于空閑的CPU百分比wa:等待IO的CPU時間百分比st:來自于虛擬機偷取CPU時間的百分比
CPU:查看所有CPU信息 mapstat -P ALL 2 3 %idle
CPU: pidstat -u 1 -p 進(jìn)程編號 用戶每秒采樣一次內(nèi)存:free -m
- 經(jīng)驗值
- 應(yīng)用程序可用內(nèi)存/物理內(nèi)存>70%內(nèi)存充足
- 應(yīng)用程序可用內(nèi)存/物理內(nèi)存<20%內(nèi)存不足,需要增加內(nèi)存
- 20%< 應(yīng)用程序可用內(nèi)存/物理內(nèi)存<70%內(nèi)存基本夠用
內(nèi)存:pidstat -p 進(jìn)程號 -r 采樣間隔數(shù) 總共采樣次數(shù)(pidstat -p 2545 -r 2 5)硬盤:查看磁盤剩余空間 df -h
網(wǎng)路IO:iostat -xdk 2 3磁盤塊設(shè)備分布
- 具體參數(shù)解釋
- rkB/s每秒讀取數(shù)據(jù)量KB
- wkB/s每秒寫入數(shù)據(jù)量KB
- svctm I/O請求的平均服務(wù)時間,單位毫秒
- util一秒鐘有百分之記得時間用于I/O操作。接近100%,表示磁盤帶寬跑滿,需要優(yōu)化程序或增加磁盤
- rkB/s、wkB/s根據(jù)系統(tǒng)不同會有不同值,但規(guī)律遵循:長期、超大數(shù)據(jù)讀寫,肯定不正常,需要優(yōu)化程序
- scvm的值和await的值接近,表示沒有I/O等待,磁盤性能好
- 如果await的值遠(yuǎn)高于scvm的值,表示I/O等待時間太長,需要優(yōu)化程序或更換磁盤
查看網(wǎng)絡(luò)I/O: pidstat -d 2 5 -p 2545
二. CPU占用過高,分析思路及定位
先用top命令找出CPU占比最高的
ps -ef或jps進(jìn)一步定位,的值是怎樣一個程序給我們?nèi)鞘?br /> 定位到具體線程或代碼 ps -mp 24425 -o THREAD,tid,time
- 參數(shù)解釋
- -m 顯示所有線程
- -p pid線程使用CPU的時間
- -o 該參數(shù)后是用戶自定義格式
es 6.1 19 - futex_ - - 24463 6-05:04:23
將需要的線程ID轉(zhuǎn)化為16進(jìn)制格式(英文小寫格式) printf “%x\n” 有問題的線程ID
- 具體步驟
- 將10進(jìn)制的線程ID轉(zhuǎn)化為16進(jìn)制格式
- jstack 24425 | grep tid(16進(jìn)制線程ID小寫英文) -A60
總結(jié)
以上是生活随笔為你收集整理的linux调优命令的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。