解密混沌工程——混沌工程實(shí)踐
隨著近兩年的數(shù)字化轉(zhuǎn)型需求激增,混沌工程這門新興學(xué)科在證券業(yè)、銀行業(yè)備受青睞。盡管混沌工程誕生至今已經(jīng)有十余年,但對大部分公司的研發(fā)團(tuán)隊(duì)而言,它仍是一個(gè)比較陌生的領(lǐng)域。
混沌工程該如何實(shí)施?

上一期我們說到,友嘉銀行通過實(shí)施混沌工程,提升了業(yè)務(wù)系統(tǒng)的穩(wěn)定性,也建立了抵御突發(fā)事件的信心。
那么,友嘉銀行如何進(jìn)行混沌工程的呢?
事前
第一步 確定系統(tǒng)脆弱點(diǎn)
混沌教練首先要對歷史事件進(jìn)行分析。根據(jù)友嘉銀行因?yàn)榉?wù)器硬件故障導(dǎo)致宕機(jī)的歷史故障事件,分析系統(tǒng)脆弱點(diǎn)。

基于混沌工程五大原則中的真實(shí)事件原則,我們推薦以生產(chǎn)中真實(shí)發(fā)生的重大故障,進(jìn)行有針對性的實(shí)驗(yàn),投入產(chǎn)出比更高。所以,這一次混沌工程實(shí)驗(yàn)要模擬網(wǎng)絡(luò)硬件故障。

第二步 確定穩(wěn)態(tài)指標(biāo)
確定一個(gè)能代表系統(tǒng)穩(wěn)定行為的關(guān)鍵指標(biāo)-業(yè)務(wù)成功率,并提出故障風(fēng)險(xiǎn)假設(shè)、設(shè)計(jì)實(shí)驗(yàn)場景、配置實(shí)驗(yàn)環(huán)境。

第三步 確定其他觀測指標(biāo)
除了穩(wěn)態(tài)指標(biāo)外,可設(shè)定用戶并發(fā)數(shù)、平均每秒交易率、平均相應(yīng)時(shí)間等觀測指標(biāo),評估故障對系統(tǒng)造成的其他影響。

事中
接下來,混沌工程實(shí)驗(yàn)開始,進(jìn)行注入故障,并實(shí)時(shí)監(jiān)控指標(biāo)的變化。

若實(shí)驗(yàn)爆炸半徑超過預(yù)期,則進(jìn)行實(shí)驗(yàn)調(diào)整,根據(jù)指標(biāo)的波動(dòng),隨時(shí)調(diào)整參數(shù)。

終止故障,進(jìn)行恢復(fù)性驗(yàn)證,觀察終止故障后,系統(tǒng)是否可以恢復(fù)正常。

事后
實(shí)驗(yàn)結(jié)束后,需要對結(jié)果進(jìn)行分析。對于發(fā)現(xiàn)的問題,找研發(fā)、運(yùn)維和廠商共同分析原因,并加以改進(jìn),提升系統(tǒng)穩(wěn)定性。

實(shí)際上,為保證實(shí)驗(yàn)效果,混沌工程需要長期持續(xù)進(jìn)行實(shí)踐,不斷地循環(huán)迭代更新實(shí)驗(yàn),才能為系統(tǒng)提供更加可靠的穩(wěn)定性保障。
混沌工程是在實(shí)踐中探索,也是在探索中實(shí)踐,只有深刻了解需求與目的,才能更好地實(shí)施混沌工程。
