這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)碛嘘P(guān)linux系統(tǒng)中的12條性能調(diào)優(yōu)命令分別是怎么樣的,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
成都創(chuàng)新互聯(lián)公司是一家專注于成都網(wǎng)站制作、網(wǎng)站建設(shè)與策劃設(shè)計(jì),張家界網(wǎng)站建設(shè)哪家好?成都創(chuàng)新互聯(lián)公司做網(wǎng)站,專注于網(wǎng)站建設(shè)十余年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:張家界等地區(qū)。張家界做網(wǎng)站價(jià)格咨詢:18980820575R: | 運(yùn)行和等待CPU時(shí)間片的進(jìn)程數(shù)。長(zhǎng)期大于CPU的個(gè)數(shù),代表CPU不足 |
B: | 等待資源的進(jìn)程數(shù),如果等待數(shù)量多,問題有可能處在I/O或者內(nèi)存 |
Swpd: | 切換到內(nèi)存交換區(qū)的內(nèi)存大小[以KB為單位] |
free: | 當(dāng)前空閑的物理內(nèi)存數(shù)量[以KB為單位] |
si: | 由磁盤調(diào)入內(nèi)存 |
so: | 由內(nèi)存調(diào)入磁盤 |
bi: | 從塊設(shè)備讀入數(shù)據(jù)的總量 |
bo: | 寫到塊設(shè)備的數(shù)據(jù)總量 |
bi+bo | 1000 如果超過1000,代表硬盤的讀寫速度有問題 |
in: | 在某一時(shí)間間隔內(nèi)觀測(cè)到的每秒設(shè)備中斷數(shù)[中斷數(shù)太多對(duì)性能不好] |
cs: | 列表示每秒產(chǎn)生的上下文切換次數(shù) |
us+sy > 80% | 代表CPU資源不足 |
us: | 用戶進(jìn)程消耗的CPU時(shí)間百分比 |
sy: | 內(nèi)核進(jìn)程消耗的CPU時(shí)間百分比 |
id: | CPU處在空閑狀態(tài)的時(shí)間百分比 |
wa: | IO等待所占用的時(shí)間百分比 |
runq-sz: | 內(nèi)存中可以運(yùn)行的進(jìn)程數(shù) |
plist-sz: | 系統(tǒng)中活躍的任務(wù)個(gè)數(shù) |
4,sar檢測(cè)CPU資源:
任務(wù)計(jì)劃 /etc/cron.d/sysstat 日志目錄 /var/log/sa 查看方法 Sar –q –f /var/log/sa/sa10
5,lscpu顯示CPU信息:
dmesg 顯示出開機(jī)啟動(dòng)的信息 lscpu 顯示CPU信息 lscpu -p 顯示CPU對(duì)應(yīng)的節(jié)點(diǎn)數(shù) getconf LONG_BIT 獲知主機(jī)的位數(shù) getconf -a 查看全部的參數(shù) /sys/class/dmi/id 可以查看Bios的信息 bios_*
6,strace顯示程序的調(diào)用:
strace –fc elinks –dump http://localhost
7,調(diào)優(yōu)硬盤優(yōu)先寫入/讀取數(shù)據(jù)用:
預(yù)先讀取需要寫入的量,然后再處理寫請(qǐng)求,↑讀到的值將會(huì)是設(shè)置值的一半↑。
設(shè)置讀取到緩存中的數(shù)值越大.寫入時(shí)就會(huì)因?yàn)閿?shù)據(jù)量大而速度變慢。/sys/block/sda/queue/nr_requests 隊(duì)列長(zhǎng)度越大,硬盤IO速度會(huì)提升,但占用內(nèi)存
/sys/block/sda/queue/scheduler 調(diào)度算法Noop、anticipatory、deadline、[cfq]
8,將Ext3文件系統(tǒng)的日志功能獨(dú)立:
1、創(chuàng)建200M的/dev/sdb1 格式化為ext3 2、dumpe2fs /dev/sdb1查看文件系統(tǒng)功能中包含的has_journal 3、Tune2fs –O ^has_journal /dev/sdb1 去掉默認(rèn)原有的日志功能 4、再分一個(gè)200M的分區(qū)./dev/sdb2. 日志卷的block必須等于 /dev/sdb1 Mke2fs –O journal_dev –b 1024 /dev/sdb2 5、將/dev/sdb2作為/dev/sdb1的日志卷. Tune2fs –j –J device=/dev/sdb2 /dev/sdb1
9,關(guān)閉記錄文件系統(tǒng)atime:
對(duì)于網(wǎng)站文件,頻繁的修改atime是沒有意義的,會(huì)影響性能 mount –o remount,noatime DEVICE 即可
10、修改文件日志的提交時(shí)間:
默認(rèn)是5秒提交一次日志,修改更長(zhǎng)時(shí)間可以提高性能,但容易丟失數(shù)據(jù)。 mount –o remount,commit=15 DEVICE
11,RAID輪循寫入調(diào)優(yōu),適用于0/5/6:
chunk size.輪循一次寫入的字節(jié).默認(rèn)是64K,只要沒有寫滿,就不會(huì)移動(dòng)到下一個(gè)設(shè)備
設(shè)置在每個(gè)硬盤都只寫一個(gè)文件就切換到下一塊硬盤,那么如果都是1K的小文件,就會(huì)將系統(tǒng)資源浪費(fèi)在切換硬盤上
如果將chunk size的值設(shè)置很大,比如100M,那么也就沒有了意義,還不如用一塊硬盤。
Stripe size.條帶大小,并不是有數(shù)據(jù)就寫入,而是設(shè)置每次寫入的數(shù)據(jù)量,一般是16K寫一次。
所以.Chunk size(64K)/stripe size(16K),也就是說每塊硬盤寫四次。
------------------------------------算當(dāng)前應(yīng)該把chunk size調(diào)成多少------------------------------------
使用iostat –x查看自開機(jī)以來每秒的平均請(qǐng)求數(shù)avgrq-sz
chunk size = 每秒請(qǐng)求數(shù)*512/1024/磁盤數(shù),取一個(gè)最緊接2倍數(shù)的整數(shù)
stride = chunk size /block(默認(rèn)是4k)創(chuàng)建raid并設(shè)置chunk sinze
mdadm –C /dev/md0 –l 0 –n3 –chunk=8 /dev/sdb[123]
修改raid
mke2fs –j –b 4096 –E stride=2 /dev/md0
12,硬盤的block保留數(shù):
dumpe2fs /dev/sda1 tune2fs –m 10 /dev/sda1 保留block百分比 tune2fs –r 保留block數(shù) 保留的block過少,影響性能,保留的過多又浪費(fèi)硬盤,默認(rèn)是5%
學(xué)習(xí)了上面的性能調(diào)優(yōu)命令和方法后,再總結(jié)幾條調(diào)優(yōu)的金句:
獨(dú)立設(shè)備性能速度比集成的強(qiáng),因?yàn)椴徽加弥鳈C(jī)整體資源
工程師一般不會(huì)遠(yuǎn)程管理計(jì)算機(jī),需要提供日志等信息
硬盤空間越大,讀取的速度越慢,可以考慮用多塊硬盤組成一塊較大空間
分區(qū)只是在硬盤上做標(biāo)識(shí),而不像格式化在做文件系統(tǒng)特性,所以速度快
硬盤越靠外側(cè)速度越快[分區(qū)號(hào)越小越靠外區(qū),所以將數(shù)據(jù)量大的首先分區(qū)].
程序開發(fā)者注重雇主的功能要求,系統(tǒng)管理員注重程序的資源開銷
上述就是小編為大家分享的linux系統(tǒng)中的12條性能調(diào)優(yōu)命令分別是怎么樣的了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道。