針對華為云服務器使用率過大

在這里插入圖片描述

從這兩張監控圖可以看出,服務器在大約上午 10:30 前后經歷了一次明顯的負載變化:


1. 圖表解讀

  • CPU 使用率

    • 從凌晨到上午約 10:00 前,CPU 基本處于 0–2% 的閑置狀態。
    • 10:00–14:00 之間,CPU 利用率逐步攀升,多次沖擊 30%–50% 的區間,最高達到約 52.6%。
  • 內存使用率

    • 同期內存一直保持在 ~39–40% 左右。
    • 上午約 10:30 開始,內存使用率突然躍升至 60%、70%,隨后逐漸爬升至 99.2% 的峰值。

2. 可能原因

  1. 新進程/服務啟動

    • 某個定時任務、容器或后臺服務在 10:30 左右啟動,短時間內占用了大量內存。
  2. 內存泄露或緩存

    • 應用(如 Java、Python 后臺進程)未正確釋放對象,導致內存逐漸耗盡。
    • 數據庫或緩存(如 Redis、MySQL)緩存設置過大。
  3. 缺少 Swap

    • 如果未配置 swap,當物理內存耗盡時,系統會直接 OOM(Out-Of-Memory),表現為內存占滿并伴隨進程被殺。
  4. 日志/文件寫入暴增

    • 大量日志寫入或文件緩存也會暫時占滿內存。

3. 排查步驟

  1. 實時進程監控

    # 查看內存占用前十的進程
    ps aux --sort=-%mem | head -n 15# 交互式查看(安裝 htop 更直觀)
    top
    # 或
    sudo apt-get install -y htop && htop
    
  2. 內存與 swap 情況

    free -h
    
    • 確認物理內存、swap 是否被用滿。
    • 如果沒有 swap,可考慮添加。
  3. 查看系統日志

    # OOM 殺進程記錄
    dmesg | grep -i oom
    journalctl -p err -n 50
    
  4. 回溯定時任務

    • 檢查 /etc/crontab/var/spool/cron 下是否有新任務在此時段執行。
  5. 應用自身日志

    • 對應服務(如你的 Web 應用、數據庫)日志目錄,查找異常報錯或 GC 信息。

4. 解決方案

  1. 短期應急

    • 殺掉占用過高的進程:

      kill -9 <pid>
      
    • 重啟內存泄漏進程或容器服務:

      systemctl restart your-service
      
  2. 配置 Swap 分區/文件

    sudo fallocate -l 2G /swapfile
    sudo chmod 600 /swapfile
    sudo mkswap /swapfile
    sudo swapon /swapfile
    # 添加到 /etc/fstab 使重啟后自動啟用
    echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
    
  3. 優化應用配置

    • 減小 JVM/Xmx、Python 緩存等內存上限;
    • 調整數據庫緩存(MySQL 的 innodb_buffer_pool_size、Redis 的 maxmemory);
  4. 橫向或縱向擴容

    • 增大實例規格(更大內存);
    • 部署多實例,做負載均衡,分擔內存壓力。
  5. 監控與報警

    • 在華為云監控中為內存使用率 ≥ 80% 設定告警,及時干預;
    • 定期審查定時任務與日志大小,避免突增。

5. 與 SSH 連接問題的關聯

  • 內存被打滿時,系統可能觸發 OOM,殺掉包括 sshd 在內的關鍵進程,導致 VS Code 無法通過 SSH 連接,但 Navicat(連接數據庫)看似正常,因為數據庫進程仍在運行。

  • 先解決內存占滿,再嘗試重啟 sshd:

    sudo systemctl restart sshd
    

下一步建議:先通過 ps aux/top 找出“吃”內存最厲害的進程,并進行殺進程或重啟;然后按需配置 swap 并優化服務內存參數;最后視業務情況決定是否擴容。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/86971.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/86971.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/86971.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

記dwz(JUI)前端框架使用之--服務端響應提示框

目錄 前言 一、DWZ服務器端響應種類 二、如何增加info級別的消息提示 1.打開項目的BaseController.java類 2.打開項目的dwz.min.js文件 3.最后在前端DWZ的主加載頁面或者js文件中添加如下代碼&#xff1a; 前言 本篇文章沒有講太多東西&#xff0c;主要是個人工作記錄保…

leetcode 295. 數據流的中位數

時間復雜度分析&#xff1a;為什么你的中位數查找方案會超時&#xff1f; 分析你提供的MedianFinder實現&#xff0c;其時間復雜度較高的原因主要在于findMedian函數的實現方式。讓我詳細解釋&#xff1a; 代碼時間復雜度分析 你的代碼中兩個主要函數的時間復雜度如下&#…

大語言模型介紹

隨著2022年底 ChatGPT 再一次刷新 NLP 的能力上限&#xff0c;大語言模型&#xff08;Large Language Model&#xff0c;LLM&#xff09;開始接替傳統的預訓練語言模型&#xff08;Pre-trained Language Model&#xff0c;PLM&#xff09; 成為 NLP 的主流方向&#xff0c;基于…

STM32 CCR寄存器

?1. CCR寄存器在輸入捕獲模式下的特性? ?只讀屬性?&#xff1a; 當定時器通道配置為輸入捕獲模式&#xff08;如捕獲上升沿/下降沿&#xff09;時&#xff0c;CCR寄存器硬件自動變為只讀?。軟件寫入操作無效&#xff0c;只能在捕獲事件發生時由硬件自動更新為當前CNT值。…

【JS-6-ES6中的let和const】深入理解ES6中的let和const:塊級作用域與變量聲明的新范式

在ES6(ECMAScript 2015)之前&#xff0c;JavaScript中只有var一種變量聲明方式&#xff0c;這導致了許多作用域相關的問題。ES6引入了let和const兩種新的變量聲明方式&#xff0c;徹底改變了JavaScript的作用域規則。本文將深入探討let和const的特性、優勢以及它們與var的區別。…

[C語言]數據類型關鍵字詳解

基本數據類型 關鍵字說明存儲大小(通常)取值范圍(通常)示例int聲明整型變量4字節(32位系統)-2,147,483,648 到 2,147,483,647int count 100;char聲明字符型變量1字節-128 到 127 或 0 到 255char grade ‘A’;float聲明單精度浮點數4字節1.2e-38 到 3.4e38 (約6-7位有效數字…

黑馬python(二十二)

目錄&#xff1a; 1.Python操作Mysql基礎使用 2.Python操作Mysql數據插入 3.綜合案例 1.Python操作Mysql基礎使用 2.Python操作Mysql數據插入 3.綜合案例 代碼復用 黑馬python&#xff08;二十一&#xff09;章節的的代碼&#xff0c;讀取文件內容

課堂筆記:吳恩達的AI課(AI FOR EVERYONE)-W1 深度學習的非技術性解釋

深度學習的非技術性解釋 &#xff08;1&#xff09;示例1&#xff1a;以商場為主買T恤為例&#xff0c;價格和需求的關系怎么樣&#xff1f; 一般來說&#xff0c;價格越高&#xff0c;需求越少 這里輸入A是 價格&#xff0c;輸出B是需求&#xff0c;其中的映射關系是神經元&a…

dlib檢測視頻中的人臉并裁剪為圖片保存

環境要求 找個帶有基本cv配置的虛擬環境安裝上dlib依賴的人臉檢測的基礎環境即可&#xff0c;主要是&#xff1a; pip install boost dlib opencv-python缺的按提示安裝。 demo 設置好視頻路徑和圖像保存路徑&#xff0c;裁剪尺寸&#xff08;默認256&#xff09;以及裁剪幀…

真的!ToDesk遠程控制已上線原生鴻蒙系統!

2025年5月&#xff0c;ToDesk遠程控制正式宣布完成對PC鴻蒙系統的適配&#xff0c;成為業界首批原生支持HarmonyOS OS的跨端遠控工具。 作為國內支持上億設備的遠程控制軟件&#xff0c;ToDesk以無縫互聯、快速響應、安全無界為核心&#xff0c;重新定義了跨設備遠程協作的界限…

Java-58 深入淺出 分布式服務 ACID 三階段提交3PC 對比2PC

點一下關注吧&#xff01;&#xff01;&#xff01;非常感謝&#xff01;&#xff01;持續更新&#xff01;&#xff01;&#xff01; &#x1f680; AI篇持續更新中&#xff01;&#xff08;長期更新&#xff09; 目前2025年06月16日更新到&#xff1a; AI煉丹日志-29 - 字節…

matplotlib 繪制餅圖

1、功能介紹&#xff1a; 使用 python 的 matplotlib 庫來創建一個簡單的餅圖。 2、代碼部分&#xff1a; import matplotlib.pyplot as plt# 示例數據 labels [A, B, C, D, E] # 類別標簽 sizes [15, 30, 45, 5, 5] # 每個類別對應的數值&#xff08;百分比&#xff09…

用Rust寫平衡三進制除法器

1、除法的本質 除法的本質是減法&#xff0c;也就是一個大的數減去一個小的數&#xff0c;比如:10/2&#xff0c;也就是10-2-2-2-2-20&#xff0c;所以商5余0&#xff0c;10/3&#xff0c;也就是10-3-3-31&#xff0c;所以商3余1&#xff0c;這也是很常見的方法&#xff0c;但如…

深入探索WordPress Multisite:構建與管理多站點網絡

隨著互聯網的快速發展&#xff0c;越來越多的企業和個人開始使用內容管理系統來搭建和維護自己的網站。WordPress作為全球最受歡迎的CMS之一&#xff0c;因其強大的功能和靈活性&#xff0c;成為了許多網站管理員的首選平臺。而在一些特定需求的場景下&#xff0c;WordPress Mu…

.Net Core 獲取文件路徑

在 .NET Core 中獲取文件路徑的方法取決于你要獲取的文件的位置和上下文。這里將介紹幾種常見的方式來獲取文件路徑。 1. 獲取當前工作目錄 你可以使用 Directory.GetCurrentDirectory() 方法來獲取當前工作目錄的路徑&#xff1a; using System; using System.IO; class P…

順序表整理和單項鏈表01 day20

二&#xff1a;各個主要函數 一&#xff1a;CreatSeqList SeqList *CreateSeqList(int len); -------------------------------------------------------------/*** brief Create a Seq List object 創建一個順序表** param n 是順序表的大小* return SeqList* 指向順序表的…

電商導購app平臺的緩存策略與性能優化方案:架構師的實踐經驗

電商導購app平臺的緩存策略與性能優化方案&#xff1a;架構師的實踐經驗 大家好&#xff0c;我是阿可&#xff0c;微賺淘客系統及省賺客APP創始人&#xff0c;是個冬天不穿秋褲&#xff0c;天冷也要風度的程序猿&#xff01; 緩存策略的重要性 在電商導購APP平臺中&#xff…

學習C++、QT---12(C++的繼承、權限對繼承的影響)

每日一言 你的價值&#xff0c;由你自己定義&#xff0c;無需他人評判。 C的繼承 直接上案例 繼承是什么意思呢&#xff0c;就是我本來這個類我叫他基類、我希望創建我的下一個類有我這之前的類的屬性和方法&#xff0c;那么我如果不用繼承的話&#xff0c;就需要多寫很多一樣…

(6)Wireshark的TCP包詳解-上篇

1.簡介 上一篇中通過介紹和講解&#xff0c;應該知道要講解和介紹的內容在哪里了吧&#xff0c;沒錯就是介紹OSI七層模型的傳輸層。因為只有它建立主機端到端的連接如&#xff1a;TCP、UDP。 2.TCP是什么? tcp是工作在傳輸層&#xff0c;也就是網絡層上一層的協議。 它是面…

太極八卦羅盤JS繪制

LeaferJS 是一款好用的 Canvas 引擎,通過LeaferJS繪制羅盤案例. https://www.leaferjs.com/ui/guide/ 示例 太極八卦羅盤 直接上代碼 <template><div id"LuoPan"></div><div id"info"><p>屏幕寬度: {{ screenWidth }}px<…