這次引發的線上故障和我有直接關係,現分析一下這次故障產生的原因和經驗教訓,還請大家引以為戒。
原因分析:
1、在***公升級包開發過程中,編寫偽登陸介面測試用例時走讀介面**發現對介面引數控制不嚴格(判斷引數是否為null)對其重構為更嚴格引數控制(判斷null或空字串),但未考慮到**中的潛規則:呼叫方就是傳遞空密碼字串,實屬好心辦了壞事。
2、重構**後沒有仔細進行**review和測試。
經驗教訓:
1、**修改前一定要慎重,確認修改後要進行**review和測試,保證系統的可用性和穩定性。由於公司註冊會員數已經超過2億,任何乙個細微的程式錯誤都會帶來較大影響,2億的萬分之一概率也會影響到2萬會員。
2、系統中的一些**潛規則需要加以注意,避免掉入陷阱。例如前面遇到過一類情況,下表中第2、3種情況通過檢視外圍系統或核心系統**可以發現問題,但第4種情況通過檢視核心系統**發現問題後如果憑以往經驗修改為正確邏輯會導致執行結果錯誤,只有通過和外圍系統聯調才能發現問題。
外圍系統呼叫** 核心系統介面** 執行結果
--――――――――――――――――――――――――――――――――
1 正確 正確 正確
2 正確 錯誤 錯誤
3 錯誤 正確 錯誤
4 錯誤 錯誤 正確
希望通過這次事件給自己敲響警鐘,盡一切可能降低下半年的故障指數。
一次線上tomcat OOM故障排查
公司的一組tomcat集群最近隔段時間出現oom故障的問題,間隔時間以及發生故障的tomcat也是隨機的,一時定位不到問題 發生oom時 使用 jmap dump file 檔名.dump pid 一直無法dump出堆記憶體,於是給所有tomcat啟動指令碼配置引數,發生oom時匯出堆記憶體快照。x...
關於線上一次超時處理引發的思考
關於線上一次超時處理引發的思考 背景最近關於線上關於註冊問題有超時2s的情況發生,最長時間已經是9s多,上游系統最多只能等待2s就返回超時失敗。影響造成線上上游系統出現註冊失敗,影響非常不好。告警郵件和簡訊頻發。問題排查鏈路 解決方案 各系統檢查自己對應介面耗時情況,運維負責檢查osg nginx問...
警示 記工作的一次錯誤
昨天早上老師部署了測試環境。但是風險預警報表模組報表不顯示,老師找了很久的問題,發現是riskalertinforeport.jsp最後翻頁的document.riskalertinfo turnpagefrom.action request.getcontextpath view allrepor...