領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)在大型遺留系統(tǒng)改造中的實(shí)踐
時(shí)間:2022-03-03 22:10:01 | 來源:行業(yè)動(dòng)態(tài)
時(shí)間:2022-03-03 22:10:01 來源:行業(yè)動(dòng)態(tài)
自領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)和微服務(wù)概念提出至今,越來越多的互聯(lián)網(wǎng)巨頭以及傳統(tǒng)行業(yè)都開始對自己的遺留系統(tǒng)進(jìn)行微服務(wù)改造,通過把系統(tǒng)拆分為更加靈活、有業(yè)務(wù)邊界上下文、松耦合的服務(wù)來應(yīng)對快速變化的市場。
IBM資深應(yīng)用架構(gòu)師于靜在主題演講中介紹了一個(gè)有著二十年歷史并支撐百萬交易額的電商平臺(tái)如何通過DDD方法華麗轉(zhuǎn)身的實(shí)踐,從這個(gè)案例我們了解到遺留系統(tǒng)進(jìn)行DDD改造過程中的點(diǎn)滴經(jīng)驗(yàn)。
于靜表示,為了加速數(shù)字化轉(zhuǎn)型與業(yè)務(wù)模式創(chuàng)新實(shí)現(xiàn),遺留系統(tǒng)的改造會(huì)面臨很多難題,比如交付速度慢、應(yīng)用架構(gòu)不滿足快速迭代需求、技術(shù)受限、維護(hù)成本高、業(yè)務(wù)流程復(fù)雜等。而在改造過程中,現(xiàn)有業(yè)務(wù)不能停,同時(shí)過程難控制、結(jié)果難驗(yàn)證等問題也非常突出。
為此,遺留系統(tǒng)改造實(shí)施需要確立目標(biāo)與制定策略、業(yè)務(wù)梳理、服務(wù)改造、集成遷移測試、反饋。在DDD指導(dǎo)下,企業(yè)需要通過事件風(fēng)暴對業(yè)務(wù)討論,審視現(xiàn)有的業(yè)務(wù)邏輯,逐步用新應(yīng)用程序和服務(wù)替換特定功能段,增量遷移舊系統(tǒng)。隨著舊系統(tǒng)功能的更換,新系統(tǒng)最終取代了所有舊系統(tǒng)功能。
于靜說,企業(yè)在遺留系統(tǒng)改造中應(yīng)該遵循先鋒隊(duì)、樹立模范、大部隊(duì)的階段性原則。具體來說,先鋒隊(duì)階段是挑選規(guī)模較小、功能簡單,業(yè)務(wù)較為獨(dú)立的功能模塊進(jìn)行改造,隨著老系統(tǒng)的功能越來越多的被微服務(wù)系統(tǒng)所代替,老系統(tǒng)也最終被替代。需要注意的是,當(dāng)發(fā)生新老系統(tǒng)的功能切換時(shí),應(yīng)該逐步切換用戶流量,對用戶盡量透明,使得改造過程過渡平滑。
關(guān)鍵詞:改造,系統(tǒng),實(shí)踐