1. 程式人生 > >伺服器卡頓排查方法

伺服器卡頓排查方法

一、檢視伺服器的記憶體和伺服器核數大小

①檢視伺服器記憶體大小

cat /proc/meminfo | grep MemTotal

②檢視伺服器核數

總核數 = 物理CPU個數 * 每個物理CPU的核數

檢視CPU的個數:

cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l

檢視每個CPU中core的個數

cat /proc/cpuinfo| grep "cpu cores"| uniq

二、檢視伺服器的負載

在確定CPU的記憶體和CPU核數後,就可以進一步觀察伺服器的負載

Linux的負載高,主要是由於CPU使用、記憶體使用、IO消耗三部分引起的

。其中任何一項的急劇增加,都會使得伺服器的負載急劇升高

top:檢視伺服器的負載

第一行:

top - 14:50:58 up 16:46,  2 users,  load average: 1.15, 0.63, 0.44
14:50:58 :系統當前時間 
up 16:46 :系統開機到現在經過了2天 
2 users:當前1使用者線上 
load average: 1.15, 0.63, 0.44:系統1分鐘、5分鐘、15分鐘的CPU負載資訊. 
備註:load average後面三個數值的含義是最近1分鐘、最近5分鐘、最近15分鐘系統的負載值。這個值的意義是,單位時間段內CPU活動程序數。如果你的機器為單核,那麼只要這幾個值均<1,代表系統就沒有負載壓力,如果你的機器為N核,那麼必須是這幾個值均<N才可認為系統沒有負載壓力。

第二行解釋: 
Tasks: 147 total,   1 running, 146 sleeping,   0 stopped,   0 zombie
147 total,:當前有108個任務 
1 running:1個任務正在執行 
46 sleeping,:107個程序處於睡眠狀態 
  0 stopped:停止的程序數 
0 zombie:僵死的程序數

第三行解釋: 
Cpu(s):  1.7%us,  0.2%sy,  0.0%ni, 95.6%id,  2.3%wa,  0.1%hi,  0.1%si,  0.0%st
1.7%us:使用者態程序佔用CPU時間百分比 
0.2%sy,:核心佔用CPU時間百分比 
 0.0%ni

:renice值為負的任務的使用者態程序的CPU時間百分比。nice是優先順序的意思 
95.6%id:空閒CPU時間百分比 
2.3%wa:等待I/O的CPU時間百分比 
0.1%hi:CPU硬中斷時間百分比 
0.1%si:CPU軟中斷時間百分比

第四行解釋: 
Mem:  32959108k total, 32783520k used,   175588k free,   291084k buffers
32959108k total:實體記憶體總數 
32783520k used: 使用的實體記憶體 
175588k free:空閒的實體記憶體 
291084k buffers:用作快取的記憶體

第五行解釋: 
Swap:  4194296k total,      148k used,  4194148k free, 10365856k cached
4194296k total:交換空間的總量 
148k used: 使用的交換空間 
4194148k free:空閒的交換空間 
10365856k cached:快取的交換空間

當伺服器的一些效能指標都良好的情況下,就要排查資料庫方面

三、資料庫排查

SHOW FULL PROCESSLIS:命令的輸出結果顯示了有哪些執行緒在執行,不僅可以檢視當前所有的連線數,還可以檢視當前的連線狀態幫助識別出有問題的查詢語句等。

id列,使用者登入mysql時,系統分配的"connection_id",可以使用函式connection_id()檢視
user列,顯示當前使用者。如果不是root,這個命令就只顯示使用者許可權範圍的sql語句
host列,顯示這個語句是從哪個ip的哪個埠上發的,可以用來跟蹤出現問題語句的使用者
db列,顯示這個程序目前連線的是哪個資料庫
command列,顯示當前連線的執行的命令,一般取值為休眠(sleep),查詢(query),連線(connect)等
time列,顯示這個狀態持續的時間,單位是秒
state列,顯示使用當前連線的sql語句的狀態,很重要的列。state描述的是語句執行中的某一個狀態。一個sql語句,以查詢為例,可能需要經過copying to tmp table、sorting result、sending data等狀態才可以完成
info列,顯示這個sql語句,是判斷問題語句的一個重要依據

相關推薦

伺服器排查方法

一、檢視伺服器的記憶體和伺服器核數大小 ①檢視伺服器記憶體大小 cat /proc/meminfo | grep MemTotal ②檢視伺服器核數 總核數 = 物理CPU個數 * 每個物理CPU的核數 檢視CPU的個數: cat /proc/cpuinfo|

SVN伺服器IP地址變更後,右鍵 解決方法(二)

體步驟如下: (建議先備份一下,原有專案檔案) 步驟一:通過Eclipse“開啟檔案”方式,快速找到當前工作空間的專案資原始檔選擇專案資原始檔,重新定向(relocate)下一步輸入新的地址重新定向成功同理操作其他專案資原始檔步驟二:找到當前工作空間下的.metadata-

一次怪異的業務排查過程

seq 用法 ipv 亂序 等於 瀏覽器 追蹤 cli tcp 上班的時候,突然被測試和產品加入了一個討論組,說有個問題需要我排查下,一頭霧水,於是開始進行了解和排查。 故障現象????客服人員使用該系統的其中幾個功能模塊的時候,彈出的溝通窗口會卡頓,並且關閉當前彈窗,返

Mosh 解決SSH境外伺服器延遲問題

Mosh是基於UDP協議的一個遠端小工具,而且支援IPv6, 可以有效解決使用SSH境外伺服器出現的輸入卡頓延遲問題。   安裝 Mosh需要客戶端和伺服器都安裝。 伺服器端 Ubuntu apt update apt install -y mosh Cen

Android Stuido解決方法

修改Android studio的安裝目錄下bin/studio.vmoptions和studio64.vmoptions 兩個檔案的以下屬性就可以在記憶體配置比較大的電腦上有效減少Android Stuido卡頓現象,多開也不怎麼卡了 -Xms2048m -X

解決虛擬機器內伺服器,不流暢問題

1   右鍵虛擬機器設定->硬體->處理器->虛擬化引擎:選擇虛擬化Intel..../AMD...那個,下面也勾選第二個類似的。然後跑起來立馬飛快       vmware虛擬機器如何設定不當的話會造成執行速度慢,

ionic頁面切換解決方法

使用ionic開發app的時候,會發現切換頁面的動畫會卡頓,並不流暢,為了保證使用者體驗,大部分人會使用禁用動畫的方法$ionicConfigProvider.views.transition('no');,但並不是最好的解決思路,cordova提供了native tran

viewpager+fragment+slidingmenu滑動解決方法

這兩天在做專案的時候遇到了一個嚴重的問題,就是viewpager中的fragment新增使用slidingmenu實現側滑欄效果後出現滑動卡頓,甚至出現了"java.lang.StackOverflo

Android優化:分析方法

rtm 主動 無法 基本 渲染 線程數 star 設備 當前 基礎知識在具體講卡頓工具前,你需要了解一些基礎知識,它們主要都和 CPU 相關。造成卡頓的原因可能有千百種,不過最終都會反映到CPU 時間上。我們可以把 CPU 時間分為兩種:用戶時間和系統時間。用戶時間就是執行

電腦越用越久,已經變得很的幾個有效加快運行的方法

單擊 朋友 例如 最大值和最小值 更改 卻又 存儲設備 就會 移動 很多朋友在使用電腦的時候,隨著時間越久,就會忽然發現電腦變得越來越卡頓,點開某個軟件要等半天,玩遊戲又加載不進去,動畫人物動作緩慢不流暢,仔細檢查電腦卻又未曾中病毒,那麽電腦越來越卡頓該怎麽辦呢,當然最有效

RedHat 7.3 系統簡單排查

1, 檢查Cpu [使用top命令] top命令的詳解不贅述, (直通車https://www.cnblogs.com/vurtne-lu/p/6550602.html), 主要看第三排的id, 代表cpu剩餘情況, 如果很低, 則需要看看哪個程序吃了cpu 2, 檢查記憶體 [使用 fre

Visual Studio 2013執行時 CPU佔用超高的解決方法

文章原始連線: http://feotech.com/?p=116 Visual Studio 2013執行時卡頓 CPU佔用超高的解決方法 使用Visual C++ 編寫程式時發現輸入程式碼時特別卡頓,CPU資源佔用也特別高。經過在網際網路上查詢發現是缺少安裝元件。 參考資料原文 ht

雙硬碟,一個SSD+一個機械硬碟,明顯及機械硬碟掉盤解決方法

東芝的240G SSD和西部資料的2TB機械硬碟。SSD做系統盤,機械硬碟當資料盤。 之前兩個硬碟插的是主機板的SATA介面,一開始使用沒問題,使用段時間之後發現非常卡頓,尤其是應用切換過程卡頓更加明顯。系統已重灌過所以不可能是系統問題,主機板幾個sata介面都試了一遍還是卡頓,而且

(親測解決)微軟Office2016 Excel開啟、緩慢解決方法

目錄 一、問題描述     1.WPS處理大型檔案時顯得力不從心,所以安裝了office2016,但是在開啟新版的Office的Excel、PowerPoint、Word時發現啟動特別慢,有時候需要十幾秒鐘才能開啟,那麼該如何解決這個問題?以下帶來幾個

H5 移動端滑屏問題原因及解決方法

加入 *{ -webkit-overflow-scrolling: touch; } -webkit-overflow-scrolling是什麼東西 -webkit-overflow-scrolling控制元素在移動裝置上面是否有滾動回彈效果,

iscroll在安卓高版本(6.0以上)某些機型上滑動問題的解決方法

問題:發現公司專案移動端的分類頁面在某些安卓機型上滑動時異常卡頓,而且出現卡頓的手機都是非常新的安卓手機,除錯的時候發現在谷歌瀏覽器的手機模擬滾動時也非常卡頓   在一段糾結異常的除錯和搜尋下找到了解決方法: 使用用fixed版本的iscroll就可以了:https://github.com/

Win10重新命名資料夾出現現象解決方法

電腦使用的系統是Win10的系統,使用的時候發現重新命名的時候出現了卡死的現象!現在把解決方法摘出來!下面有兩種方法,個人是第二種解決問題的第一種:其實操作很簡單,只需要簡單的三步:1. 開啟任意資料夾2. 點選左上角選單欄中的“檔案”按鈕,選擇“更改資料夾和搜尋選項”,如下

Xcode8.3.2 效能調優工具 Instruments 之 TimeProfiler -- 揪出頁面利器的使用方法

廢話不多說,直接上乾貨:(切記兩點:1、真機除錯。2、應用程式執行一定要釋出配置而不是除錯配置) 第一步:找到 TimeProfiler (兩種方法) 1、開啟專案 2、開啟專案 第二步:TimeProfiler 配置 第三步:找到耗時的函式 從圖片中可以看出最耗時的是-

view繪製渲染機制和runloop什麼關係?所謂的列表,到底是什麼原因引發的?drawrect方法內為何第一行程式碼總要獲取圖形的上下文?

當在操作 UI 時,比如改變了 Frame、更新了 UIView/CALayer 的層次時,或者手動呼叫了 UIView/CALayer 的 setNeedsLayout/setNeedsDisplay方法後,這個 UIView/CALayer 就被標記為待處理

伺服器12種基本故障及排查方法

第一章 加電類故障   一、定義舉例   從上電(或復位)到自檢完成這一段過程中電腦所發生的故障。   二、可能的故障現象   1、 主機不能加電(如:電源風扇不轉或轉一下即停等)、有時不能加電、開機掉閘、機箱金屬部分帶電等;   2、 開機無顯,開機報警;   3、 自檢報