成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

大型銀行核心系統(tǒng)“迭代式”敏捷遷移之路

系統(tǒng) 新聞
今天,我的分享會(huì)以這10年以來我參與的兩次大型的重構(gòu)遷移的故事為主線。

一、基于IBM-I的大型銀行核心系統(tǒng)目前的基本情況

核心系統(tǒng)轉(zhuǎn)型,近幾年是銀行業(yè)界一個(gè)很熱門的話題。銀行是最早開始構(gòu)建自己的IT系統(tǒng)去做數(shù)字化和自動(dòng)化的行業(yè)之一,經(jīng)過幾十年的發(fā)展,這些IT系統(tǒng)和背后龐大的數(shù)據(jù)成為了銀行的一大筆財(cái)富,但同時(shí)也成為一個(gè)負(fù)擔(dān)。

例如我今天介紹的這個(gè)基于IBM-I的大型銀行核心系統(tǒng),完全匯豐內(nèi)部研發(fā),開發(fā)和運(yùn)行了30多年,累積了千萬(wàn)行代碼,數(shù)以噸計(jì)的海量數(shù)據(jù)。至今,這個(gè)系統(tǒng)仍然支持著我們環(huán)球市場(chǎng)50多個(gè)國(guó)家和地區(qū)多個(gè)中后臺(tái)業(yè)務(wù)領(lǐng)域 ,包括運(yùn)營(yíng),財(cái)務(wù)和風(fēng)險(xiǎn)管理等等,它既要支持環(huán)球市場(chǎng)統(tǒng)一和標(biāo)準(zhǔn)化的業(yè)務(wù)流程,同時(shí)也要滿足很多地區(qū)性的需求。同時(shí),作為骨干系統(tǒng)之一,它連接著300多個(gè)匯豐其它內(nèi)部系統(tǒng),像一棵古樹的樹根一樣,錯(cuò)綜復(fù)雜。

我在這個(gè)團(tuán)隊(duì)的整整10年,基本上都是在為這個(gè)骨灰級(jí)別的核心系統(tǒng),尋找各種新技術(shù)和新的替代方案,有失敗也有成功。今天,我的分享會(huì)以這10年以來我參與的兩次大型的重構(gòu)遷移的故事為主線。都說時(shí)代造就人,其實(shí)時(shí)代也造就架構(gòu)和選擇。在科技的世界,每5年就是一個(gè)新時(shí)代了。十年兩次遷移,我們對(duì)于平臺(tái)、架構(gòu)、技術(shù)棧以及整個(gè)開發(fā)部署的模式的選擇和決定,都有很多不同。

這次的回顧和分享,背后的思路和考量,希望給我自己,給大家,都可以帶來一些參考。

二、兩次大遷移

1、第一次大遷移

10年前, 我開始參與這個(gè)核心系統(tǒng)的第一次遷移,主要的目標(biāo)是把全世界50個(gè)獨(dú)立運(yùn)行的一代實(shí)例,匯總到3個(gè)亞歐美的大區(qū)域?qū)嵗彩俏覀兊亩到y(tǒng)上面,這個(gè)跟當(dāng)時(shí)在國(guó)內(nèi)外都頗為流行的“大集中”項(xiàng)目類似。

10年前,IBM 還是行業(yè)的老大,特別是在金融科技領(lǐng)域,IBM-I具備中后臺(tái)系統(tǒng)必須的優(yōu)秀品質(zhì),例如健壯、穩(wěn)定,在后臺(tái)處理和批處理方面也有它優(yōu)勝之處。所以當(dāng)時(shí)二代系統(tǒng)的遷移還是選擇了IBM-I。

這個(gè)橫跨5年的重構(gòu)遷移項(xiàng)目在整體上是成功的。重構(gòu)后的二代系統(tǒng),采用了當(dāng)時(shí)更先進(jìn)的設(shè)計(jì)理念,同時(shí)在這個(gè)整合和遷移的過程中,我們?cè)谌蚍秶?jiǎn)化、優(yōu)化、標(biāo)準(zhǔn)化和自動(dòng)化了環(huán)球市場(chǎng)運(yùn)營(yíng)的整個(gè)業(yè)務(wù)流程。另外,我們對(duì)IBM-I 上的核心模塊進(jìn)行瘦身,清理了30%左右的舊功能和無用代碼,把部分功能、新的服務(wù)以及很多和其他系統(tǒng)交互的接口模塊解構(gòu)出來,獨(dú)立運(yùn)行。第一次遷移總體來說是相當(dāng)成功的,它也為我們第二次遷移打下了很好的基礎(chǔ)。

但是,項(xiàng)目運(yùn)行的過程,就有點(diǎn)不堪回首了。我們采用瀑布模型運(yùn)行整個(gè)項(xiàng)目。一代系統(tǒng)支持的所有業(yè)務(wù)、功能和數(shù)據(jù),一次性遷移到二代系統(tǒng)上。即使把50個(gè)國(guó)家,分成了幾批上線,平均周期1年一批,每批10個(gè)國(guó)家左右,每個(gè)批次還是相當(dāng)龐大的。忙碌了一整年,成功與失敗,都是最后上線那一刻決定。更準(zhǔn)確來說,是周末的驚心動(dòng)魄48小時(shí)。成功了,舊系統(tǒng)就一鍵關(guān)掉。來自全球不同國(guó)家的所有用戶從星期一開始,就用新系統(tǒng)去做他們的日常工作。這就是我們常說的“BIG DAY”。所有的投資和風(fēng)險(xiǎn)一直累積,價(jià)值和回報(bào)只有等成功上線的“BIG Day”之后才會(huì)開始,回收期長(zhǎng)達(dá)幾年。

圖片

2、第二次大遷移

5年前第一次大遷移基本上完成,我們又開始了對(duì)這個(gè)大型核心系統(tǒng)第三代的構(gòu)想。

1)第一個(gè)靈魂拷問:還是IBM-I嗎,如果不是,又將是什么呢?

IBM-I,曾經(jīng)的王者。隨著時(shí)代的變遷,它特別支持的編程語(yǔ)言,對(duì)于我們采用新的架構(gòu)和設(shè)計(jì)理念有很多的限制。大而全的架構(gòu)和設(shè)計(jì),令到更新的速度已經(jīng)跟不上業(yè)界需要的節(jié)奏。最迫在眉睫的問題就是,老系統(tǒng)已經(jīng)無法吸引年輕人和新的人才加入了。因此,5年前我們就做了一個(gè)決定,我們開始搬離IBM-I,如果不是IBM-I,那又是什么呢?

微服務(wù)架構(gòu)、分布式設(shè)計(jì)、云原生系統(tǒng)。?

  • 我們的系統(tǒng)需要支持環(huán)球市場(chǎng),7*24在線模式是必須的。
  • 金融市場(chǎng)瞬息萬(wàn)變,這個(gè)行業(yè)對(duì)系統(tǒng)更新的要求,不比互聯(lián)網(wǎng)行業(yè)慢。然而金融系統(tǒng)需要在靈活快速更新和擴(kuò)展的同時(shí),和穩(wěn)定安全的要求上要取得一個(gè)平衡點(diǎn),分布式的架構(gòu)能夠滿足我們的要求。
  • 數(shù)據(jù)為王,基于大數(shù)據(jù)的分析預(yù)測(cè)和AI/MI的應(yīng)用,已經(jīng)是基本需求,也是銀行保持競(jìng)爭(zhēng)力的必備要求,所以,我們的新系統(tǒng)要有能力和大數(shù)據(jù)分析以及AI/ML模型的對(duì)接。

最后還有一個(gè)重要原則:堅(jiān)持內(nèi)部研發(fā),特別是核心模塊。

2)第二個(gè)靈魂拷問:系統(tǒng)遷移只能一步到位嗎?

系統(tǒng)遷移,在需求上面, 業(yè)務(wù)部門是希望一步到位的,而不是在新舊兩個(gè)系統(tǒng)之間轉(zhuǎn)換。脫離了業(yè)務(wù)的技術(shù)就是偽技術(shù),所以我們做任何的技術(shù)方案一定得到業(yè)務(wù)部門的支持。但我們也問自己,問業(yè)務(wù)部門,能否再來一次為期5年的系統(tǒng)遷移?如果5年以后新系統(tǒng)才上線,世界已經(jīng)發(fā)生了巨大的變化,5年我們等得起嗎?我們是否可以迭代式敏捷遷移,通過雙機(jī)并行數(shù)據(jù)同步統(tǒng)一入口等手段,最小化對(duì)業(yè)務(wù)部門的影響呢?

圖片

三、“迭代式”敏捷遷移的挑戰(zhàn)

1)第一個(gè)挑戰(zhàn):全面了解原系統(tǒng)?

30年是一個(gè)足夠久遠(yuǎn)的年代,我們組里第一代的程序員甚至已經(jīng)退休了,運(yùn)行了30多年且至今還在不斷更新的老系統(tǒng),已經(jīng)沒有人能說完全懂它,對(duì)原來的系統(tǒng)進(jìn)行全面的了解是第一個(gè)巨大的挑戰(zhàn)。

2)第二個(gè)挑戰(zhàn):找到切入點(diǎn)模塊化遷移,新舊系統(tǒng)有機(jī)并行?

原來的系統(tǒng)大而全,內(nèi)外部錯(cuò)綜復(fù)雜,我們?nèi)绻龅降倪w移,就需要找到一個(gè)合適的切入點(diǎn),能夠把它整個(gè)模塊解剖解構(gòu),再模塊化遷移,難度也較大。引用一位同事的比喻,就像做外科手術(shù)一樣,手術(shù)中的精準(zhǔn)和術(shù)后的縫合都是非常重要的。

3)第三個(gè)挑戰(zhàn):新舊系統(tǒng)有機(jī)并行,一起敏捷,統(tǒng)一運(yùn)維?

迭代式敏捷遷移必須解決的一個(gè)挑戰(zhàn)就是新老系統(tǒng)需要健康交互、有機(jī)并行。業(yè)界有一個(gè)挺好的比喻,如今,銀行核心系統(tǒng)做轉(zhuǎn)型,就像在做一個(gè)不能停的換心手術(shù),所以用什么方法能夠保持新老系統(tǒng)的健康交互和有機(jī)并行,而我們的開發(fā)運(yùn)維團(tuán)隊(duì)也能夠同時(shí)跟得上這兩個(gè)系統(tǒng)?這就是我們最后一個(gè)也是最大的難點(diǎn)。

1、全面了解原系統(tǒng)

10年前第一次遷移,我們采用的是翻箱倒柜,找歷史文檔,然后再人工分析,把文檔和代碼比對(duì)。但是隨著時(shí)間的遷移,這一套方法已經(jīng)行不通了。懂IBM-I的人越來越少,就像之前說的,第一代的程序員甚至已經(jīng)退休。人工分析,工程量大,周期長(zhǎng),原系統(tǒng)一直還在被持續(xù)不斷地更新改進(jìn)中,人工分析根本跟不上進(jìn)度,人為錯(cuò)誤的機(jī)率也大。

這一次遷移,我們開始尋找新的解決思路。

首先,有什么是可以完全信賴的呢?就是至今還在生產(chǎn)機(jī)上日日夜夜跑動(dòng)的千萬(wàn)行代碼,以及每天都在新鮮產(chǎn)生的海量數(shù)據(jù)。

然后,我們只能依靠人工分析嗎?如果我們把IBM-I上的這些代碼和數(shù)據(jù),都變成大數(shù)據(jù)。另外,讓我們的技術(shù)和業(yè)務(wù)專家們輸入他們的知識(shí)和分析邏輯,轉(zhuǎn)換成規(guī)則建立在規(guī)則引擎。最后,利用今天自然語(yǔ)言處理、大數(shù)據(jù)分析以及AI的各種技術(shù)庫(kù),我們完全可以構(gòu)建一個(gè)機(jī)器人來協(xié)助自己,所以我們就有了自研智能分析引擎。

最后為了方便大家的搜索檢索,我們利用了一些開源的自動(dòng)構(gòu)圖工具根據(jù)知識(shí)庫(kù)去自動(dòng)構(gòu)建圖形和流程圖,可視化了知識(shí)庫(kù),這樣我們就得到了一部活字典。

圖片

2、找到切入點(diǎn)模塊化遷移,新舊系統(tǒng)有機(jī)并行

有了智能分析引擎去幫助我們了解老系統(tǒng)之后,我們的第二個(gè)難題就是:我們的老系統(tǒng)內(nèi)外部錯(cuò)綜復(fù)雜,需要找到一個(gè)合適的切入點(diǎn)將它進(jìn)行拆解和遷移。

1)MVP(Minimum Viable Product) 功能和范圍定義

第一步也是重要的一步就是定義MVP的功能和范圍,MVP的成敗決定了我們是否可以得到業(yè)務(wù)層和管理層后續(xù)的支持。大部分技術(shù)遷移的成功就在于我們要證明它有商業(yè)價(jià)值,并且在可接受的回收期。

首先我們選擇了一個(gè)老系統(tǒng)沒有的功能,從全新功能開始,意味著萬(wàn)一失敗,對(duì)現(xiàn)在的系統(tǒng)和業(yè)務(wù)的影響不會(huì)太大。另外,也要考慮從最適合用新技術(shù)解決的業(yè)務(wù)痛點(diǎn)開始,痛點(diǎn)不夠痛,大家不會(huì)動(dòng)。一旦成功了,會(huì)讓業(yè)務(wù)部門和企業(yè)感受到實(shí)實(shí)在在的的價(jià)值和回報(bào),這樣更容易得到業(yè)務(wù)部門、管理層和后續(xù)資金的支持。我們選擇了后臺(tái)系統(tǒng)最核心最重要的一塊業(yè)務(wù)——支付和結(jié)算,以及整個(gè)流程中一個(gè)小服務(wù)——智能審查控制服務(wù)。利用大數(shù)據(jù)分析預(yù)測(cè)的技術(shù)可以大大提升整個(gè)審查控制的精確度,幫助我們客戶、業(yè)務(wù)部門和銀行控制支付風(fēng)險(xiǎn)。

除了實(shí)現(xiàn)功能,我們也在MVP里把基礎(chǔ)設(shè)施構(gòu)建好,并沒有急著上線新功能,而是通過各種測(cè)試和完善,保證新架構(gòu)的靈活擴(kuò)展、 穩(wěn)定、性能和彈性等。

2)新服務(wù)和舊系統(tǒng)交互,有機(jī)并行

第二步,我們需要把新服務(wù)和舊系統(tǒng)連接起來,有機(jī)并行。我們選擇了在老系統(tǒng)建立了API endpoints以及和消息中間件交互的適配器。這里我也想分享一個(gè)理念,就是老系統(tǒng)不能破罐子破摔。保證老系統(tǒng)對(duì)新系統(tǒng)的對(duì)接,是支持我們完成整個(gè)迭代式跨技術(shù)平臺(tái)遷移大計(jì)劃的重要保證。同時(shí),為了盡可能減少對(duì)業(yè)務(wù)部門的影響,我們?cè)贛VP加入了統(tǒng)一的用戶界面,它同時(shí)連接著新老系統(tǒng)背后的數(shù)據(jù)庫(kù),讓對(duì)應(yīng)業(yè)務(wù)部門在統(tǒng)一的入口看到了全貌,既享受了新系統(tǒng)帶來的更豐富的前端功能,也不會(huì)在這個(gè)過渡階段受到太大的影響。簡(jiǎn)單一句話就是,門面功夫還是要做足的。

這個(gè)MVP 還是挺成功的,它收到了業(yè)務(wù)部門的支持,我們把單純的技術(shù)遷移轉(zhuǎn)變?yōu)闃I(yè)務(wù)和技術(shù)的同時(shí)推陳出新。

3)遷移現(xiàn)有功能

架構(gòu)和基礎(chǔ)都打好以后,我們才開始遷移現(xiàn)有功能模塊。我們選擇了郵件交易確認(rèn)功能。考慮點(diǎn)就是,相對(duì)風(fēng)險(xiǎn)較小和容錯(cuò)率相對(duì)高一點(diǎn)的業(yè)務(wù)模塊。另外,自動(dòng)測(cè)試是遷移,特別是跨技術(shù)棧重構(gòu)遷移的重要保證。業(yè)務(wù)系統(tǒng)本身的重構(gòu)遷移開發(fā)和自動(dòng)測(cè)試所用到的用例設(shè)計(jì)以及自動(dòng)化工具,應(yīng)該是同步的。

5年過去了,這個(gè)就是如今的雙IT架構(gòu)的總體樣子。我們基本上探索出了我們的思路和路線,算是找到了一條可持續(xù)發(fā)展的路。另外,更重要的是,得到了業(yè)務(wù)部門、管理層和后續(xù)資金的支持,我們也把單純的技術(shù)遷移轉(zhuǎn)變成技術(shù)和業(yè)務(wù)的同步的遷移和創(chuàng)新。

圖片

3、新舊系統(tǒng)保持一致的敏捷節(jié)奏和統(tǒng)一的運(yùn)維模式

打好了架構(gòu)和基礎(chǔ)之后,我們面臨的第三個(gè)挑戰(zhàn)是兩個(gè)系統(tǒng)有機(jī)并行,那么就需要開發(fā)維護(hù)兩個(gè)系統(tǒng),平臺(tái)技術(shù)棧和用到的工具都不太一樣,團(tuán)隊(duì)越來越不負(fù)重荷了。我們通過應(yīng)用和自研相結(jié)合,構(gòu)建了一套自動(dòng)化工具鏈,以及同時(shí)適配新老系統(tǒng)的開發(fā)運(yùn)維一站式平臺(tái),來幫助我們自己。

下圖是我們現(xiàn)在的團(tuán)隊(duì)所用的工具集的一覽圖,上面既有一些業(yè)界廣為應(yīng)用大家應(yīng)該也熟悉的一些工具,如Jira、Jenkins、CheckMarx,也有特別適用于IBM-I系統(tǒng)的一些工具,如RTC、RDI和Arcad,而帶星號(hào)的就是我們自己開發(fā)構(gòu)建的工具和平臺(tái)。

圖片

分享一下我們選擇工具和自研設(shè)計(jì)的一些理念。

1)優(yōu)先考慮業(yè)界優(yōu)秀的工具。

因?yàn)闃I(yè)界的工具會(huì)有很多的場(chǎng)景和用戶一起論證和不斷完善,它們一定程度會(huì)比我們自研的更周全。另外,采用業(yè)界的工具,可以讓我們精力和時(shí)間,更專注于我們自己在金融科技和業(yè)務(wù)領(lǐng)域的專長(zhǎng)。

2)當(dāng)業(yè)界沒有合適的工具時(shí),我們可以自己研發(fā)構(gòu)建。

例如我們針對(duì)IBM-I開發(fā)了IBM-I特有的編程語(yǔ)言RPG的自動(dòng)掃描工具,以保證代碼的安全和質(zhì)量,還有前面提到的同時(shí)適配新老系統(tǒng)的自動(dòng)化測(cè)試框架。

當(dāng)所有業(yè)界和自研的工具搭建完成后,一個(gè)新問題是:我們?cè)诓煌墓ぞ咂脚_(tái)之間輪換,已經(jīng)大大影響了我們的工作效率和質(zhì)量。為了解決這個(gè)痛點(diǎn),我們又構(gòu)建了適合我們自己的開發(fā)運(yùn)維一站式平臺(tái),讓大家可以在一個(gè)平臺(tái)完成大部分日常工作。

我們的一體化平臺(tái)的實(shí)現(xiàn)思路并不復(fù)雜:現(xiàn)在大部分工具都是API接口的,我們只是on top搭建了一站式平臺(tái),通過API自動(dòng)觸發(fā)以及連接不同工具上的action,然后通過API從不同平臺(tái)抓取所需要的信息。之前,我們需要登錄10多個(gè)工具平臺(tái),200多個(gè)點(diǎn)擊,才能完成一個(gè)標(biāo)準(zhǔn)的更改流程。現(xiàn)在只需要登錄我們的一站式平臺(tái),20多個(gè)點(diǎn)擊,就可以完成整個(gè)流程了。這個(gè)平臺(tái)對(duì)于我們同時(shí)需要支持新老系統(tǒng)的團(tuán)隊(duì)來說,幫助非常大。此外,我們也節(jié)省了很多對(duì)于同事使用不同工具的學(xué)習(xí)和培訓(xùn)的成本。

圖片

最后我想跟大家分享我們?cè)陂_發(fā)構(gòu)建工具時(shí)對(duì)技術(shù)棧選擇的一些考慮。

  • 第一,工具和平臺(tái)的構(gòu)建和運(yùn)行,目標(biāo)也是遷離IBM-I,跟我們的愿景一致。同時(shí)我們的目標(biāo)是一套工具和平臺(tái),同時(shí)適配新老系統(tǒng)。
  • 第二,采用更開放的新技術(shù)棧來開發(fā)構(gòu)建工具,為原IBM-I技術(shù)人員提供從實(shí)戰(zhàn)中學(xué)習(xí)新技術(shù)棧的機(jī)會(huì)。我們有相當(dāng)一部分IBM-I程序員,在開發(fā)工具的實(shí)戰(zhàn)中掌握了新技術(shù),成功轉(zhuǎn)型成為新老系統(tǒng),新舊技術(shù)棧都懂,業(yè)務(wù)也很精通的跨界程序員,他們已經(jīng)成為我們這個(gè)遷移大計(jì)劃的骨干力量。

圖片

四、思考與總結(jié)

  • 技術(shù)或者模型不分貴賤,IBM-I還是云,瀑布還是敏捷,沒有好壞對(duì)錯(cuò),最適合的就是最好的。
  • 人和文化(people and culture)比技術(shù)更重要。各種技術(shù)只是工具,架構(gòu)和設(shè)計(jì)的理念,以及一直探索、學(xué)習(xí)和創(chuàng)新的團(tuán)隊(duì)和文化,才是永恒的。
責(zé)任編輯:張燕妮 來源: dbaplus社群
相關(guān)推薦

2021-01-06 10:49:31

云遷移銀行

2015-08-06 21:00:43

華瑞

2022-08-03 09:29:39

數(shù)據(jù)遷移

2016-07-05 16:51:45

分布系統(tǒng)

2022-11-11 15:34:54

分布式

2022-08-10 09:52:16

平臺(tái)實(shí)踐

2023-08-02 08:05:54

push系統(tǒng)迭代APP

2022-05-30 11:10:04

數(shù)據(jù)庫(kù)MySQL系統(tǒng)

2018-07-12 16:01:41

阿里云金融分布式

2022-07-08 07:22:44

數(shù)據(jù)庫(kù)架構(gòu)運(yùn)維

2021-05-29 11:17:53

阿里云金融常熟農(nóng)商銀行

2022-05-24 12:16:36

存儲(chǔ)遷移存儲(chǔ)層diff

2021-01-04 13:50:31

BI商業(yè)智能永洪科技

2010-03-02 14:46:03

Android核心系統(tǒng)

2016-09-14 21:11:34

商務(wù)辦公
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 欧美国产精品 | 色噜噜狠狠色综合中国 | 国产欧美精品一区二区三区 | 成人精品福利 | 国产精品美女在线观看 | 亚洲精品福利在线 | 精品国产一区二区三区久久久久久 | www四虎影视 | 国产精品成人一区 | 欧美日韩中文字幕在线 | 欧美日本一区二区 | 奇米四色在线观看 | 色久伊人 | 精品一区二区电影 | 国产一区在线免费观看视频 | 99tv成人影院 | 免费国产视频 | 91视频入口 | 日韩中文字幕一区二区 | 成人免费在线观看 | 国产一区欧美 | 国产精品久久久久久久久图文区 | 自拍偷拍亚洲欧美 | 欧美国产一区二区三区 | 日本久久网 | 91精品一区二区三区久久久久 | 中文字幕日韩欧美一区二区三区 | 欧美韩一区二区 | 日韩视频区 | 免费a级毛片在线播放 | 黄色av一区 | 国产成人精品一区二区三区网站观看 | 99re在线视频 | 国产欧美日韩在线观看 | 亚洲欧美激情精品一区二区 | 91av亚洲 | 国产黄色大片 | 亚洲福利一区二区 | 日本精品视频 | 国产精品久久久久久一级毛片 | 国产高清视频 |