開發應該知道的Linux系統分析-網路篇

  • 2020 年 2 月 14 日
  • 筆記

說到網路,可以先在腦子裡面有一個模型,就是你給你老家的父母影片聊天的時候,網路傳輸時間怎麼算?當然你可能會感覺到時很快——毫秒級,但傳播時間是存在的,這個跟光纖的傳播速度及光訊號折射率等有關。

常用網路工具有:

  • 通過ping命令檢測網路的連通性
  • 通過netstat –i組合檢測網路介面狀況
  • 通過netstat –r組合檢測系統的路由表資訊
  • 通過sar –n組合顯示系統的網路運行狀態
  • 強大的ss 完爆netstat
  • iperf - 網路性能評測工具netperf - TCP/IP層的網路測試工具
  • tsung – 分散式並發壓力測試工具
  • httpsender – http壓力測試工具

網路配置ethtool

iptraf

iptraf命令的全拼是「IP traffic monitor」,iptraf命令可以實時地監視網卡流量,可以生成網路協議數據包資訊、乙太網資訊、網路節點狀態和ip校驗和錯誤等資訊。iptraf命令支援命令行和菜單操作兩種方式,當不帶任何參數是iptraf命令將進入菜單操作方式,通過螢幕菜單來執行相應操作。執行iptraf-ng如下:

也可以用sar(System Activity Reporter 系統活動情況報告)–n DEV 1 1命令去分析。

最後我們從應用上來講應用一般分為兩類:

CPU 密集型:CPU往往會處於很高的負載,當系統壓力上升時,相對於磁碟和記憶體,往往CPU首先到達瓶頸.Web Server,Mail server以及大部分服務類程式都屬於這一類。

I/O 密集型:IO密集型的應用需要消耗大量的記憶體和存儲;這主要是因為應用需要在記憶體中處理大量的數據並不需要消耗太多CPU和網路(除非是網路存儲)IO密集型的應用使用CPU來處理IO請求之後進入內核調度的sleep狀態.資料庫是常見的IO密集型的應用。

寫到這裡已經從CPU、記憶體、IO、網路說了一下開發需要了解的Linux的知識,很多人是學而不習,很多人是習而不學,學是一個維度,習是一個維度。希望新的一年你是個學習的人,知行合一的人,最後祝大家平安,吉祥!

Tags: