1. 程式人生 > 其它 >提高 Linux 伺服器效能

提高 Linux 伺服器效能

提高 Linux 效能的具體方法

  • 確保系統擁有足夠的記憶體
  • 使用 SSD 更換 HDD
  • 使用負載均衡器將網路流量分散到多個應用伺服器
  • 配置系統和應用:將資料分散在多塊磁碟,不動態執行 DNS 查詢,執行多個伺服器例項
  • 檢查實際工作:刪除不需要的守護程序,不要執行過多的服務,改變批處理和大型作業的優先順序和執行時機
  • 組織硬碟和檔案系統,使負載均衡,最大化 I/O 吞吐量:如對資料庫應用 RAID 磁碟
  • 監控網路,確保頻寬未飽和,錯誤率保持在低位
  • 找出系統根本無法滿足不了的需求

盤點裝置

  • CPU 型別和描述 lscpu more /proc/cpuinfo
  • 記憶體大小和使用情況 more /proc/meminfo
  • 磁碟裝置和使用統計 cat /proc/diskstats

分析 CPU 使用情況

vmstat 10 10

  • us 使用者時間,數值大表明計算量大
  • sy 系統時間,數值大表明大量的系統呼叫或 I/O 操作
  • id 空閒時間;wa I/O 等待時間; st 從虛擬機器竊取時間
  • cs 上下文切換;in 中斷次數。這 2 者大說明硬體裝置工作不當或配置錯誤。

mpstat -P ALL 檢視多個 CPU 效率

uptime 檢視系統平均負載

輸出的 3 個值分別對應於 1 分鐘,5 分鐘,15 分鐘內的平均負載。

ps -aux top 檢視程序佔用 CPU

小心 top 本身佔用大量的 CPU

分析記憶體使用情況

vmstat 10 10

  • swpd 虛存空間
  • free 空閒空間
  • buff 緩衝空間
  • cache 快取空間
  • si 記憶體<--磁碟
  • so 記憶體-->磁碟
    如果 si 和 so 數值大,說明系統持續不斷地換出頁面,增加更多的實體記憶體有助於提高效能。

free 檢視記憶體大小

分析磁碟 I/O

iostat

  • tps 每秒傳輸次數
  • kB_read/s 每秒讀取數量
  • kB_wrtn/s 每秒寫入數量
  • kB_read 總共讀取數量
  • kB_wrtn 總共寫入數量

分析網路 I/O