服務宕機問題排查記錄

2022-09-21 16:00:13 字數 788 閱讀 2051

用jediscluster進行管道操作psetstr

ps -ef|grep 查詢程序號,jstat -gcutil 程序id 2000,top檢視當前記憶體占用(-c檢視執行指令碼)、free -m 檢視機器可用記憶體,幾個命令,分析出當前機器空閒記憶體不足

修改:調整程式啟動的最大堆記憶體引數、修改程式,採用後兩位尾數查詢方式,減少分頁量的大小,從10個批次擴充到100個批次,配合多執行緒處理

後續問題:由於成功載入了redis資料,導致redis資料內部占用記憶體較大,使其他程式執行時宕機,解決:將redis下的dump檔案

top 指令:如果swap的uesd變化頻繁,說明記憶體可能不足了,free少,不代表真的不夠用了,mem的used表示,之前使用的記憶體,使用之後不會立即返回free

堆、棧分配的記憶體,如果沒有使用是不會占用實存(res)的,只會記錄到虛存(virtt)。

如果程式占用實存比較多,說明程式申請記憶體多,實際使用的空間也多。

如果程式占用虛存比較多,說明程式申請來很多空間,但是沒有使用。

比如可能會有【程式虛存300g+, 實存只有不到15g】

gcstat -gcutil 程序號

s0:倖存1區當前使用比例

s1:倖存2區當前使用比例

e:伊甸園區使用比例

o:老年代使用比例

m:元資料區使用比例

ccs:壓縮使用比例

ygc:年輕代垃圾**次數

fgc:老年代垃圾**次數

fgct:老年代垃圾**消耗時間

gct:垃圾**消耗總時間

線上服務宕機問題排查思路

出現線上問題的時候,緊張在所難免,有一篇文章講解新手與老手處理線上問題的差別 新手遇到問題後,都是忙於排查問題,這個是怎麼回事 怎麼突然宕機了 老手會首先想 是否有服務降級策略 怎麼快速恢復服務 重啟吧,90 的問題能夠靠重啟解決 是不是上游或者下游有異常 在分布式系統橫行的今天,大部分故障可分為一...

生產close wait問題排查記錄

一 問題現象 背景 公司封裝了訊息中心,統一對接外部簡訊通道,並提供統一的傳送api http介面 供公司內部使用。環境如下 問題現象 圖中 3.簡訊平台 出現很多 closed wait 連線,檢視這些closed wait的連線都是和nginx的連線ip port 二 分析http在什麼情況下會...

ES記錄少於MYSQL記錄問題排查

前提 訪問乙個介面時,訪問日誌會插入到es和mysql中 現象 生產環境mysql記錄增加了8條,es記錄僅增加3條,如下 1 檢視生產近期應用錯誤日誌 無明顯問題 2 檢視生產es錯誤日誌 無明顯問題 3 前往測試環境復現 單點訪問,無記錄缺失情況 懷疑高併發引起 用jmeter進行高併發模擬10...