1. 程式人生 > >Linux系統性能優化思路和方法

Linux系統性能優化思路和方法

#影響Linux效能的CPU、記憶體、磁碟、網路等因素分析

1.系統硬體資源:CPU,多核與超執行緒

消耗CPU的業務:動態WEB服務,Mail伺服器

2.記憶體:實體記憶體與swap的取捨,64作業系統

消耗記憶體的業務:記憶體資料庫(Redis、hbase、mongodb)

3.磁碟:RAID技術(RAID0/1/5/10),SSD

消耗磁碟的業務:資料庫伺服器

4.網路頻寬:網絡卡/交換機/雙網絡卡繫結

消耗頻寬的業務:hadoop平臺,視訊業務平臺

#影響Linux效能的作業系統相關資源分析

1.系統安裝優化

磁碟分割槽,RAID設定,swap設定

2.核心引數優化

ulimit -n 最大開啟檔案數

ulimit -u 最大使用者數

3.檔案系統優化

ext2:linux下標準檔案系統,無日誌記錄(inode)功能

ext3:在ext2基礎上增加了日誌記錄功能(inode),僅支援32000個目錄

ext4: ext3的後續版本,linux2.6.28核心開始支援,無限子目錄支援,快速fsck

xfs:高效能檔案系統,linux3.10核心開始預設支援

讀操作頻繁首選:ext4 寫操作頻繁首選:xfs

#系統性能調優之CPU效能評估工具與優化經驗

1.cpu效能評估工具

vmstat(預設系統自帶)

vmstat 3 5    表示每3s更新一次輸出資訊,統計5次後停止輸出

[[email protected] ~]# vmstat 2 3

procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----

r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st

0  0      0 60072824 246332 3805844    0    0     0    25    1    1  0  0 100  0  0

1  0      0 60072848 246332 3805844    0    0     0    24  698  729  0  0 100  0  0

0  0      0 60073080 246332 3805844    0    0     0    28 1445 1034  0  0 100  0  0

procs    r列表示執行和等待cpu時間片的程序數,這個如果長期大於系統cpu個數,說明cpu不足,需要增加cpu

b列表示在等待資源的程序數,比如等待I/O,或者記憶體交換等

procs標準:    r 不超過cpu程序數

memory標準:

swap標準:    si,so長期不為0,說明記憶體不足,需要加記憶體

io標準:    bi+bo超過1000,而且wa值較高,說明磁碟IO有問題,應提高磁碟讀寫效能

system標準:    us長期超過50%,使用者程序消耗cpu,需要考慮優化程式或演算法

sy長期超過50%,核心消耗的cpu資源很多

us+sy長期超過80%,說明可能cpu資源部足

id cpu空閒的百分比

wa 參考值20%,如果超過20%,說明io等待嚴重

cpu重點參考:r    cs  us  sy id  wa值的大小

2.iostat工具(需要安裝sysstat工具包)

iostat -c 3 5   顯示cpu使用情況

iostat -d 3 5    顯示磁碟使用情況

# -r記憶體,-ucpu -d磁碟

tps 表示每秒到物理磁碟的傳送數,也就是每秒的I/O流量,一個傳送就是一個I/O請求,多個邏輯請求可以被合併為一個物理I/O請求

sar -r 3 5

sar -u 3 5

pidstat -r -p 3 5

#系統性能調優之記憶體效能、磁碟效能評估工具與優化經驗

#系統性能調優之網路效能評估工具與系統性能分析標準

mtr www.baidu.com

tracroute www.baidu.com

netstat -r    檢視網路介面狀態

netstat -i     c檢視網路路由



作者:帥T
連結:https://www.jianshu.com/p/dd72d37071e3
來源:簡書
簡書著作權歸作者所有,任何形式的轉載都請聯絡作者獲得授權並註明出處。