最近做網(wǎng)關(guān)系統(tǒng)對(duì)接第三方服務(wù)棍矛,由于第三方系統(tǒng)網(wǎng)絡(luò)問題儡遮,讀取對(duì)方響應(yīng)超時(shí)導(dǎo)致大量超時(shí)重發(fā)乳蛾。在第二次重發(fā)時(shí),第三方系統(tǒng)會(huì)報(bào)數(shù)據(jù)已存在錯(cuò)誤鄙币。
為了解決這個(gè)bug肃叶,我嘗試在第二次收到數(shù)據(jù)已存在錯(cuò)誤時(shí),報(bào)給上層應(yīng)用成功十嘿。
但我在修bug的同時(shí)引入了一個(gè)bug:沒有判斷字段是否存在因惭,導(dǎo)致拋NPE異常。
由于我之前寫代碼時(shí)不夠重視绩衷,檢查到空字段都是讓直接拋NPE異常蹦魔,然后加日志監(jiān)控。之前很多NPE異常咳燕,都是網(wǎng)絡(luò)數(shù)據(jù)錯(cuò)誤勿决,所以我也不是很重視。
結(jié)果遇到坑了招盲。這個(gè)bug一直報(bào)警低缩,我也一直沒在意,結(jié)果導(dǎo)致了長(zhǎng)達(dá)一晚的報(bào)警曹货!好在有重試機(jī)制咆繁,否則后果不堪設(shè)想讳推!
總結(jié):經(jīng)驗(yàn)很重要!代碼規(guī)范很重要么介!我一直都是自己修bug自測(cè)完就上線娜遵,這次就踩坑了,流程很重要壤短!