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次后停止輸出
[root@zabbix ~]# 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查看網絡路由

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM