Linux系統負載查詢

来源:https://www.cnblogs.com/HopkinsCybn/archive/2018/11/24/10014137.html
-Advertisement-
Play Games

查詢Linux系統負載情況,一般需要瞭解三個方面的信息: 1、Linux系統配置。如Linux版本號、CPU、記憶體、網路、磁碟等; 2、收集系統負載信息的手段。常用的工具包有sysstat和procps等。 3、查詢結果分析。通過工具包獲取系統負載信息,要具體分析系統是否負載、某項指標參數是否超標、 ...


 

查詢Linux系統負載情況,一般需要瞭解三個方面的信息:

1、Linux系統配置。如Linux版本號、CPU、記憶體、網路、磁碟等;

2、收集系統負載信息的手段。常用的工具包有sysstat和procps等。

3、查詢結果分析。通過工具包獲取系統負載信息,要具體分析系統是否負載、某項指標參數是否超標、系統的瓶頸集中哪幾項等。

 

一、查詢Linux系統配置

  查詢CPU配置:

  • lscpu命令

    獲取CPU架構、是否支持超線程、主頻、緩存信息等。當然更詳細的信息存儲在/proc/cpuinfo文件。

  查詢記憶體配置

  • free命令

    free命令在man文檔中的介紹為"Display amount of free and used memory in the system.",free -g 表示用GB顯示記憶體信息,free -m表示用MB顯示記憶體信息。

    回顯結果中"Mem: "行表示從OS層面看記憶體使用情況。"-/+ buffers/cache: "表示從應用程式角度看記憶體使用情況。

    其中(- buffers/cache) used記憶體數=[Mem:] used - buffers - cached,反映的是被程式實實在在吃掉消耗的記憶體;

      (+ buffers/cache) free記憶體數=[Mem:] free + buffers + cached,反映的是系統中還可以被挪用的記憶體;

    buffer: A buffer is something that has yet to be "written" to disk.
    cache: A cache is something that has been "read" from the disk and stored for later use.

 

二、查詢系統負載

系統平均負載即在特定時間間隔內運行隊列中的平均進程數。如果一個進程滿足如下條件就會加入到運行隊列中,

1 它沒有在等待I/O操作的結果;
2 它沒有主動進入等待狀態;
3 沒有被停止,包含等待終止。

 常用查詢命令:

 command  descriptions
uptime tell how long the system has been running.
top display Linux tasks.
iostat report central processing unit(cpu) statistics and input/output statistics for device, partitions and network filesystems(NFS).
vmstat report virtual memory statistics.

 

 

 

 

sysstat軟體包:包含監測系統性能及效率的一組工具。

1、cifsiostat用於輸出cifs文件系統的讀寫操作信息。

2、iostat用於輸出CPU、I/O系統和磁碟分區的統計信息,可以用來分析磁碟I/O、帶寬等信息。

3、mpstat用於輸出CPU的各種統計信息,可以用於分析程式運行在內核態和用戶態的工作情況。

4、pidstat用於監控被Linux內核管理的單個任務。

5、sadf用於格式化輸出sar的輸出數據。

6、sar用於定時收集系統的各種狀態信息,然後可以對系統各個時間點的狀態進行監控。

procps軟體包:包含一組提供系統信息的實用程式。

1、ps用於查看某一時刻的進程。

2、sysctl用於在運行時配置內核參數。

3、free用於查詢記憶體和swap信息。

4、pgrep,pkill用於通過名稱和其他屬性查找或者發送信號給進程。

5、pmap用於顯示一個或者多個進程所使用的記憶體數量。

6、pwdx用於顯示一個進程的工作目錄。

7、skill、snice被廢棄的命令,由killall、pkill、pgrep替代。

8、slabtop用於實時顯示系統的內核緩存信息。

9、tload使用圖形顯示系統的平均負載。

10、top用於動態顯示進程信息。

11、uptime用於顯示系統運行時間和最近1min、5min和10min內的平均負載。

12、vmstat用於顯示processes、memory、paging、block IO、tps、and cpu使用信息,

13、w顯示登錄的賬戶和他們活動情況。

14、watch定時執行程式,並全屏顯示。

 

當然還有更多的第三方工具包用於監控Linux系統運行和性能情況,比如atop、htop、iotop等。

查詢當前進程中所有的線程:

top命令

top -Hp <pid>

/proc/<pid>文件

cat /proc/<pid>/status

ls /proc/<pid>/task/ | wc -l

ps命令

ps hHp <pid> | wc -l

ps -T -p <pid>

 

三、結果分析

  對於通過Linux命令和工具收集到的數據需要理解每個欄位的含義 ,用於分析當前系統的負載情況,比如,記憶體占用過高、CPU繁忙、IO等待時間過長等。

 

 

    

    

 

 

 

 

---恢復內容結束---


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 1、檢查是否安裝 rpm -aq sudo rsyslog #檢驗是否安裝此軟體 ***如果沒有需執行(yum install sudo rsyslog -y)安裝*** 2、配置審計 echo "Defaults logfile = /var/log/sudo.log" >> /etc/sudoe ...
  • CentOS 7.3預設使用的是firewall作為防火牆,這裡改為iptables防火牆。 1:關閉firewall: systemctl stop firewalld.service systemctl disable firewalld.service systemctl mask firew ...
  • 目錄參數所在/etc/sudoers 1、Host_Alias定義主機別名 例:Host_Alias FILESERVERS = fs1,fs2 #註意“=”號兩邊要有空格隔開 ***由於現今linux系統都是在windows系統下通過虛擬機來統一管理和操作,所以一般主機別名不用*** 2、User ...
  • 本章節主要講了 Linux 系統下的關於文件I/O操作的幾個函數:open、read、write、lseek、close 的使用和需要註意的一些細節。接著,又介紹了多進程見如何共用文件。下麵開始知識點梳理。 文件描述符 對於內核來說,所有打開的文件,都是通過文件描述符來引用。當打開或創建一個新的文件 ...
  • 1 分頁機制 在虛擬記憶體中,頁表是個映射表的概念, 即從進程能理解的線性地址(linear address)映射到存儲器上的物理地址(phisical address). 很顯然,這個頁表是需要常駐記憶體的東西, 以應對頻繁的查詢映射需要(實際上,現代支持VM的處理器都有一個叫TLB的硬體級頁表緩存部 ...
  • -c :新賬號passwd檔的說明欄 -d :新賬號每次登錄時所使用的home_dir,預設值為default_home內login名稱,並當成登錄時目錄名稱 -e :*賬號終止日期,日期的指定格式為MM/DD/YY -g :*group(組)名稱或以數字來做用戶登錄的起始組。 -G :*定義此用戶 ...
  • 1、GROUP=100 #依賴於/etc/login.defs的USE RGRUUPS_ENAB參數,如果為no,則在此處控制 2、HOME=/home #把用戶的家路徑健在/home中 3、INACTIVE=-1 #是否啟用賬戶過期停權,-1表示不啟用 4、EXPIRE= #賬號終止日期,不設置表 ...
  • 原創作品,轉載請在文章頭部(顯眼位置)註明出處:https://www.cnblogs.com/sunshine5683/p/10014724.html 要在linux學習的路上越走越遠,總結是必不可少的!接下來繼續總結內容.... 1、$ vim /etc/security/limits.conf ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...