• <tfoot id="ukgsw"><input id="ukgsw"></input></tfoot>
    
    • 久久精品精选,精品九九视频,www久久只有这里有精品,亚洲熟女乱色综合一区
      分享

      10分鐘教會你看懂top

       張宏韜 2021-04-22

      來自:掘金,作者:Z.L41753

      圖片

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

      Load Average

      圖片

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

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

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

      top命令一行一行看

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

      第一行:

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

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

      第二行:
      Tasks: 216 total,   1 running, 215 sleeping,   0 stopped,   0 zombie
      Tasks:當前有多少進程running:正在運行的進程sleeping:正在休眠的進程stopped:停止的進程zombie:僵尸進程
      running越多,服務器自然壓力越大。
      第三行:
      %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
      us: 用戶進程占CPU的使用率sy: 系統進程占CPU的使用率ni: 用戶進程空間改變過優先級id: 空閑CPU占用率wa: 等待輸入輸出的CPU時間百分比hi: 硬件的中斷請求si: 軟件的中斷請求st: steal time

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

      第四行&第五行
      KiB Mem : 65810456 total, 30324416 free,  9862224 used, 25623816 buff/cacheKiB Swap:  7999484 total,  7999484 free,        0 used. 54807988 avail Mem
      total:內存總量free:空閑內存used:使用的buffer/cache:寫緩存/讀緩存
      第四第五行分別是內存信息和swap信息。所有程序的運行都是在內存中進行的,所以內存的性能對與服務器來說非常重要。不過當內存的free變少的時候,其實我們并不需要太緊張。真正需要看的是Swap中的used信息。Swap分區是由硬盤提供的交換區,當物理內存不夠用的時候,操作系統才會把暫時不用的數據放到Swap中。所以當這個數值變高的時候,說明內存是真的不夠用了。

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

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

      其他命令

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

      綜上

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

        本站是提供個人知識管理的網絡存儲空間,所有內容均由用戶發布,不代表本站觀點。請注意甄別內容中的聯系方式、誘導購買等信息,謹防詐騙。如發現有害或侵權內容,請點擊一鍵舉報。
        轉藏 分享 獻花(0

        0條評論

        發表

        請遵守用戶 評論公約

        類似文章 更多

        主站蜘蛛池模板: 亚洲国产天堂久久综合226114| 老司机午夜精品视频资源| 国产精品大片中文字幕| 亚洲欧美人成电影在线观看| 精品无码一区二区三区电影| 久久免费精品国自产拍网站| 日本一区二区三区专线| 人妻少妇偷人精品无码| 国产午夜福利视频合集| 青青草国产线观看| 人妻综合专区第一页| 国产一区二区精品久久| 午夜大片免费男女爽爽影院| 饥渴的少妇2中文字幕| 久青草国产在视频在线观看| 不卡乱辈伦在线看中文字幕| 国产人妻久久精品一区| 亚洲av成人在线一区| 成人免费一区二区三区| 国产欧美日韩亚洲一区二区三区| 精品国产一区二区三区麻豆 | 欧美日韩精品一区二区三区不卡| 凹凸在线无码免费视频| 精品无码日韩国产不卡AV| 亚洲日韩精品无码一区二区三区| 人妻少妇精品久久| 亚洲国产日韩一区三区| 国产迷姦播放在线观看| 无码精品人妻一区二区三区影院| 高大丰满熟妇丰满的大白屁股| 日本道精品一区二区三区| 国产一区二区三区在线视頻| 国产在线高清视频无码| 肥臀浪妇太爽了快点再快点| 亚洲另类无码一区二区三区| 亚洲一区二区精品动漫| 亚洲欧美成人久久一区| 精品国产人妻一区二区三区久久| 久久精品国产亚洲av麻豆不卡| 久久99精品久久久久久齐齐| 欧美成人午夜在线观看视频|