Linux操做系統-命令-netstat

#  以前已經寫過了3篇與"性能測試"有關係的Linux命令,它們分別是freetopvmstathtml

#  接下來還須要把另外2個命令也寫下來:netstatiostatios

  最近認真地讀了1篇關於"定位性能瓶頸"的文章(http://techblog.youdao.com/?p=961),因此性能這個事兒仍是得一步步來,知識積累到必定程度,在運用的過程當中就造成了經驗。那麼前面提到的free、top、vmstat、netstat、iostat均可以輔助咱們幹些什麼呢?其實,在那篇文章裏面都已經提到了:能夠得到到如下各種狀況,協助咱們分析性能。網絡

  • CPU佔用太高
  • 物理內存富餘量少
  • 磁盤io佔用太高
  • 發生換入、換出過多
  • 網絡連接數過多

  因此說,起碼這5個Linux命令仍是比較重要的,得把命令"展現的項"弄清楚了才行,而後再逐漸地進一步去向更高的技術邁進。數據結構

#  廢話多了又不廢電dom

#  在那篇文章裏,也提到了這麼幾個工具:socket

  • Jstat - 查看Java堆的佔用率
  • Jstack
    • 死鎖
    • 死循環
    • 數據結構異常
    • 集中等待外部服務的響應
  • Jmap - /
  • Mat - 分析內存中什麼對象引用了大量的對象

#  廢話多了又不廢電tcp

#  top的擴展用法工具

  • shift + p :將進程按照CPU佔用率從高到低排序,便於逐一排查
  • shift + m:查看內存佔用狀況
  • shift + h :觀察線程級別的CPU使用分佈

-------------------------以上內容參考並摘自http://techblog.youdao.com/?p=961,看吧,命令和工具加起來不到10個-------------------------性能

#  下面開始介紹netstat了測試

#  嚴重參考:http://www.cnblogs.com/ggjucheng/archive/2012/01/08/2316661.html

概念

Netstat,打印"網絡鏈接"、"路由表"、"接口狀態"、"假裝鏈接"、"多播成員"這些與網絡相關的信息。

在Linux內的1個用法

netstat

可以使用的參數

#提示:LISTEN和LISTENING的狀態只有用-a或者-l才能看到

-a (all)顯示全部選項,默認不顯示LISTEN相關
-t (tcp)僅顯示tcp相關選項
-u (udp)僅顯示udp相關選項
-n 拒絕顯示別名,能顯示數字的所有轉化成數字。
-l 僅列出有在 Listen (監聽) 的服務狀態
-p 顯示創建相關連接的程序名
-r 顯示路由信息,路由表
-e 顯示擴展信息,例如uid等
-s 按各個協議進行統計
-c 每隔一個固定時間,執行該netstat命令。

輸出列表內各字段的介紹

Active Internet connections

備註

Proto

顯示鏈接使用的協議

 

Recv-Q

接收隊列

 

Send-Q

發送隊列

 

Local Address

 

 

Foreign Address

 

 

State

 

 

 

Active UNIX domain sockets

備註

Proto

顯示鏈接使用的協議

 

RefCnt

鏈接到本套接口上的進程號

 

Flags

 

 

Type

套接口的類型

 

State

套接口的當前狀態

 

I-Node

 

 

Path

鏈接到套接口的其它進程使用的路徑名

相關文章
相關標籤/搜索