成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

10分鐘教會你看懂top

系統 Linux
后端們最怕的事情之一就是服務器的負載突然飆升,這可能又意味著一個個奪目Call馬上要打過來了。碰到這種情況怎么辦,大家第一反應一定是登陸到服務器上,先敲一個top命令看看Load Average吧。

[[395231]]

 后端們最怕的事情之一就是服務器的負載突然飆升,這可能又意味著一個個奪目Call馬上要打過來了。碰到這種情況怎么辦,大家第一反應一定是登陸到服務器上,先敲一個top命令看看Load Average吧。今天這篇文章和大家說說怎么看這個“Load Average”。

>>>>

Load Average

很多人說Load Average這一個指標就能說明系統負載高了,這句話是對的。那么具體是哪里壓力大了呢?這三個數值是怎么計算出來的呢?可能很多人一下子都說不上來。

先來說說定義吧:在一段時間內,CPU正在處理以及等待CPU處理的進程數之和。三個數字分別代表了1分鐘,5分鐘,15分鐘的統計值。

所以,這個數值的確能反應服務器的負載情況。但是,這個數值高了也并不能直接代表這臺機器的性能有問題。可能是因為正在進行CPU密集型的計算,也有可能是因為I/O問題導致運行隊列堵了。所以,當我們看到這個數值飆升的時候,還得具體問題具體分析。直接升級機器是簡單粗暴,但是治標不治本。

top命令一行一行看

top命令輸出了很多參數,真正的服務器負載情況我們要綜合其他參數一起看。

第一行: 

  1. top - 20:41:08 up 18 days,  5:24,  2 users,  load average: 0.04, 0.03, 0.05  
  2. top:當前時間  
  3. up:機器運行了多少時間  
  4. users:當前有多少用戶  
  5. load average:分別是過去1分鐘,5分鐘,15分鐘的負載 

具體需要關注的果然還是load average這三個數值。大家都知道,一個CPU在一個時間片里面只能運行一個進程,CPU核數的多少直接影響到這臺機器在同時間能運行的進程數。所以一般來說Load Average的數值別超過這臺機器的總核數,就基本沒啥問題。

第二行: 

  1. Tasks: 216 total,   1 running, 215 sleeping,   0 stopped,   0 zombie  
  2. Tasks:當前有多少進程  
  3. running:正在運行的進程  
  4. sleeping:正在休眠的進程  
  5. stopped:停止的進程  
  6. zombie:僵尸進程 

running越多,服務器自然壓力越大。

第三行: 

  1. %Cpu(s):  0.2 us,  0.1 sy,  0.0 ni, 99.8 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st  
  2. us: 用戶進程占CPU的使用率  
  3. sy: 系統進程占CPU的使用率  
  4. ni: 用戶進程空間改變過優先級  
  5. id: 空閑CPU占用率  
  6. wa: 等待輸入輸出的CPU時間百分比  
  7. hi: 硬件的中斷請求  
  8. si: 軟件的中斷請求  
  9. st: steal time 

這一行代表了CPU的使用情況,us長期過高,表明用戶進程占用了大量的CPU時間。us+sy如果長期超過80或者90,可能就代表了CPU性能不足,需要加CPU了。

第四行&第五行 

  1. KiB Mem : 65810456 total, 30324416 free,  9862224 used, 25623816 buff/cache  
  2. KiB Swap:  7999484 total,  7999484 free,        0 used. 54807988 avail Mem  
  3. total:內存總量  
  4. free:空閑內存  
  5. used:使用的  
  6. buffer/cache:寫緩存/讀緩存 

第四第五行分別是內存信息和swap信息。所有程序的運行都是在內存中進行的,所以內存的性能對與服務器來說非常重要。不過當內存的free變少的時候,其實我們并不需要太緊張。真正需要看的是Swap中的used信息。Swap分區是由硬盤提供的交換區,當物理內存不夠用的時候,操作系統才會把暫時不用的數據放到Swap中。所以當這個數值變高的時候,說明內存是真的不夠用了。

第五行往下 

  1. PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND                                                                                                                                                                  
  2.  19868 root      20   0 19.733g 369980  15180 S   0.7  0.6 129:53.91 java                                                                                                                                                                     
  3.  19682 root      20   0 19.859g 5.766g  22252 S   0.3  9.2 139:42.81 java                                                                                                                                                                    
  4.  54625 100       20   0   50868  33512   4104 S   0.3  0.1   0:04.68 fluentd                                                                           
  5.  PID:進程id  
  6. USER:進程所有者  
  7. PR:優先級。數值越大優先級越高  
  8. NI:nice值,負值表示高優先級,正值表示低優先級  
  9. VIRT:進程使用的虛擬內存總量  
  10. SWAP:進程使用的虛擬內存中被換出的大小  
  11. RES:進程使用的、未被換出的物理內存大小  
  12. SHR:共享內存大小  
  13. SHR:共享內存大小  
  14. S:進程狀態。D表示不可中斷的睡眠狀態;R表示運行;S表示睡眠;T表示跟蹤/停止;Z表示僵尸進程。  
  15. %CPU:上次更新到現在的CPU占用百分比 ;  
  16. %MEM:進程使用的物理內存百分比 ;  
  17. TIME+:進程使用的CPU時間總計,單位1/100秒;  
  18. COMMAND:命令名/命令行 

這些就是進程信息了,從這里可以看到哪些進程占用系統資源的概況。

其他命令

top當然是我們最常見的查看系統狀況的命令。其他命令還有很多。vmstat,w,uptime ,iostat這些都是常用的命令。

綜上

看懂這些具體參數以后,就知道自己的代碼到底哪方面需要改進了,是優化內存消耗,還是優化你的代碼邏輯,當然無腦堆機器也可以,只要你說服的了老板! 

 

責任編輯:龐桂玉 來源: Linux學習
相關推薦

2009-11-25 09:02:12

2020-10-29 08:28:42

Java NIO異步非阻塞

2022-03-18 15:41:29

原子化服務HarmonyOS鴻蒙

2011-06-12 18:30:07

投影機技巧

2017-04-25 12:07:51

AndroidWebViewjs

2020-09-14 11:30:26

HTTP3運維互聯網

2020-11-10 09:01:52

DPDK網絡監控

2020-05-21 19:46:19

區塊鏈數字貨幣比特幣

2021-11-08 18:37:45

MySQL解碼測試

2020-11-06 08:54:43

Vue 3.0函數代碼

2021-07-15 06:43:11

Bash調試腳本

2018-08-30 14:31:28

Linux磁盤LVM

2021-04-20 13:59:37

云計算

2024-08-30 08:50:00

2013-09-13 14:08:01

2020-06-30 10:45:28

Web開發工具

2020-10-13 18:22:58

DevOps工具開發

2014-08-08 09:30:04

android scrollview

2025-04-01 01:35:00

NodeMySQL數據庫

2024-08-07 10:16:00

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 少妇一级淫片免费放播放 | 欧美久久久 | av福利网站 | 黄色av大片 | 亚洲成人中文字幕 | 国内精品免费久久久久软件老师 | 福利影院在线看 | 成年无码av片在线 | 国产精品日产欧美久久久久 | 青青草原综合久久大伊人精品 | 91影院| 精品毛片| 亚洲一级毛片 | 999久久久 | 亚洲精品毛片av | 97在线超碰 | 久久福利电影 | 亚洲成人动漫在线观看 | 啪一啪在线视频 | 欧美久久精品一级黑人c片 91免费在线视频 | 欧美一区二区三区视频 | 在线a视频| 日韩在线不卡视频 | 久久久免费毛片 | 欧美精品在线一区二区三区 | 国产欧美精品 | 蜜桃视频在线观看免费视频网站www | 久久国产免费 | 青草视频在线 | 亚洲精品女人久久久 | 日本中文字幕一区 | 欧美激情精品久久久久久 | 国产一区不卡 | 久久中文字幕一区 | 日韩欧美一区二区三区在线播放 | 久久爱综合 | 亚洲一区二区久久 | 午夜网址 | 亚洲成人自拍 | 亚洲一区在线播放 | 亚洲精品成人在线 |