随着近两年的数字化转型需求激增,混沌工程这门新兴学科在证券业、银行业备受青睐。尽管混沌工程诞生至今已经有十余年,但对大部分公司的研发团队而言,它仍是一个比较陌生的领域。
混沌工程该如何实施?
上一期我们说到,友嘉银行通过实施混沌工程,提升了业务系统的稳定性,也建立了抵御突发事件的信心。
那么,友嘉银行如何进行混沌工程的呢?
事前
第一步 确定系统脆弱点
混沌教练首先要对历史事件进行分析。根据友嘉银行因为服务器硬件故障导致宕机的历史故障事件,分析系统脆弱点。
基于混沌工程五大原则中的真实事件原则,我们推荐以生产中真实发生的重大故障,进行有针对性的实验,投入产出比更高。
所以,这一次混沌工程实验要模拟网络硬件故障。
第二步 确定稳态指标
确定一个能代表系统稳定行为的关键指标-业务成功率,并提出故障风险假设、设计实验场景、配置实验环境。
第三步 确定其他观测指标
除了稳态指标外,可设定用户并发数、平均每秒交易率、平均相应时间等观测指标,评估故障对系统造成的其他影响。
事中
接下来,混沌工程实验开始,进行注入故障,并实时监控指标的变化。
若实验爆炸半径超过预期,则进行实验调整,根据指标的波动,随时调整参数。
终止故障,进行恢复性验证,观察终止故障后,系统是否可以恢复正常。
事后
实验结束后,需要对结果进行分析。对于发现的问题,找研发、运维和厂商共同分析原因,并加以改进,提升系统稳定性。
实际上,为保证实验效果,混沌工程需要长期持续进行实践,不断地循环迭代更新实验,才能为系统提供更加可靠的稳定性保障。
混沌工程是在实践中探索,也是在探索中实践,只有深刻了解需求与目的,才能更好地实施混沌工程。