云效助力新金融DevOps转型——南京银行实践之路
在2018云棲大會(huì)南京峰會(huì)企業(yè)研發(fā)云專場(chǎng),由南京銀行研發(fā)管理負(fù)責(zé)人吳攀帶來(lái)了“云效助力新金融DevOps轉(zhuǎn)型——南京銀行實(shí)踐之路”的主題分享。首先對(duì)南京銀行的研發(fā)規(guī)模與成長(zhǎng)做了介紹,對(duì)“鑫云+”的誕生和其架構(gòu)應(yīng)用做了詳細(xì)的講解。
數(shù)十款阿里云產(chǎn)品限時(shí)折扣中,趕快點(diǎn)擊這里,領(lǐng)券開始云上實(shí)踐吧!
直播視頻請(qǐng)點(diǎn)擊
以下為精彩視頻內(nèi)容整理:
南京銀行研發(fā)規(guī)模概況
簡(jiǎn)單給大家介紹一下南京銀行現(xiàn)在的規(guī)模,南京銀行的科技現(xiàn)在有運(yùn)維中心、研發(fā)中心和科技管理部,我是在科技管理部負(fù)責(zé)配置管理和研發(fā)過(guò)程管理。我們現(xiàn)在正式的員工有200多人,外包合作場(chǎng)商有600多人,在線運(yùn)營(yíng)的運(yùn)營(yíng)系統(tǒng)有300多個(gè)。
有人說(shuō)銀行不就是有柜面、網(wǎng)銀、手機(jī)銀行嗎?在這里想和大家解釋一下,舉個(gè)例子。一個(gè)貸款的產(chǎn)品,除了要涉及到本身的核心柜面,貸款本身的系統(tǒng)以外,可能還涉及到風(fēng)控,涉及到大數(shù)據(jù),然后總賬,還有賬戶管理,還有監(jiān)管。那么銀行的這種交易的特殊性,導(dǎo)致了每一個(gè)產(chǎn)品可能都有很多個(gè)系統(tǒng)在背后支撐,也就導(dǎo)致了交易的鏈路會(huì)非常的長(zhǎng)。
南京銀行研發(fā)管理的成長(zhǎng)歷程
很榮幸在加入南京銀行之后正好是金融快速發(fā)展的這些年,見證了南京銀行科技力量不斷增強(qiáng)的一個(gè)過(guò)程。最開始的時(shí)候銀行可能只有幾個(gè)系統(tǒng)結(jié)構(gòu)簡(jiǎn)單,但還是有很多技術(shù)強(qiáng)人,他可能技術(shù)能力很全面,他可能一個(gè)人就把系統(tǒng)都做好了,把一個(gè)系統(tǒng)維護(hù)好。那么銀行的業(yè)務(wù)不斷擴(kuò)展,用戶可以買理財(cái),買債券,可以融資等,這樣就導(dǎo)致了很復(fù)雜的系統(tǒng)結(jié)構(gòu)。這個(gè)時(shí)候如果還像原來(lái)作坊式的開發(fā)模式就行不通了。舉個(gè)例子,在剛剛工作的時(shí)候有一個(gè)項(xiàng)目經(jīng)理,他是非常負(fù)責(zé)任的,他每天下班前都會(huì)做一個(gè)excel表記錄團(tuán)隊(duì)里每個(gè)人今天修改了哪些代碼,在哪個(gè)模塊上做了什么,這樣手動(dòng)去記。在多行研發(fā)的時(shí)候根本就不可能完成的。到2014年的時(shí)候系統(tǒng)已經(jīng)到200套了,也就大概六七十個(gè)人,這個(gè)時(shí)候僅僅靠人是根本不能完成的。這個(gè)時(shí)候就決定要引入外部的管理,要有流程,要有質(zhì)量。2014年的時(shí)候獲得了CMMI ML3和ISO的體系認(rèn)證。
傳統(tǒng)金融業(yè)研發(fā)過(guò)程管理痛點(diǎn)
在建設(shè)這些體系的過(guò)程中也是跟傳統(tǒng)銀行業(yè)一樣遇到了很多痛點(diǎn),比如廠商很多,拿過(guò)來(lái)的原型也很多。原先的這種模式是外購(gòu)為主,經(jīng)過(guò)適配很快就能把業(yè)務(wù)連接起來(lái)。這樣的弊端就是各種各樣的技術(shù)架構(gòu),非常復(fù)雜,在這樣復(fù)雜的系統(tǒng)架構(gòu)里邊去實(shí)施一個(gè)流水線是一件非常痛苦的事情,同時(shí)也帶來(lái)了銀行的業(yè)務(wù)要求需要迭代非常快。如果這么多的問題,沒有一個(gè)工具來(lái)管理的話,是不能完全應(yīng)付的。當(dāng)時(shí)我們也做了一些統(tǒng)一的工作,設(shè)立了一些系統(tǒng)把需求管起來(lái)。架構(gòu)也要統(tǒng)一起來(lái),即使是一部分的統(tǒng)一也要盡量的保持不要浪費(fèi)資源。配置管理也用了一些集成的工具,還有測(cè)試到部署。但是一個(gè)點(diǎn)的快并不是全流程的快,想要快速交付這個(gè)價(jià)值,需要一個(gè)完整的不能中斷的流水線才能盡善盡美。這些問題怎么解決呢?接下來(lái)進(jìn)行一個(gè)介紹。
“鑫云+”的誕生
2017年1月份這個(gè)思想才萌芽,真正開始進(jìn)廠的時(shí)候是2017年的7月,等到上線是2017年11月,先來(lái)介紹一下“鑫云+”是一個(gè)什么概念呢?南京銀行是鑫合俱樂部的一個(gè)牽頭行,鑫合俱樂部有140家成員行,所有的資金在一個(gè)聯(lián)盟里面。另外的一頭連接的是互聯(lián)網(wǎng)。作為這兩頭的橋梁,可以連接出很多種可能。
“鑫云+”項(xiàng)目架構(gòu)變革
“鑫云+”從7月份進(jìn)廠之后就對(duì)廠商原有的產(chǎn)品做了重構(gòu),所有的規(guī)范全部重來(lái)。拆成微服務(wù)、換數(shù)據(jù)庫(kù)中間所有的這些標(biāo)準(zhǔn)全部按照阿里螞蟻的要求做修改。在這個(gè)基礎(chǔ)上提出來(lái)DevOps體系。
云效在DevOps上落地的一些內(nèi)容,從開發(fā)開始→測(cè)試→集成→部署,包括環(huán)境管理、監(jiān)控。這一套整個(gè)的可視化非常的強(qiáng),也簡(jiǎn)單易用的一個(gè)流水線。這樣的話工作者不需要學(xué)很多,尤其是測(cè)試人員,只需要三堂課就可以將上萬(wàn)條案例都測(cè)試完。
“鑫云+”項(xiàng)目并行開發(fā)、多分支管理、持續(xù)集成
在云效值得學(xué)習(xí)的三個(gè)地方,第一個(gè)就是分支開發(fā)的這個(gè)模式,在傳統(tǒng)端,比如有一個(gè)老的開發(fā)系統(tǒng)已經(jīng)開發(fā)了很長(zhǎng)時(shí)間,有一個(gè)大的模塊可能半年才上。但是同時(shí)又有其他小的需求,可能一兩周就要上,同時(shí)可能也有一些bug要修復(fù),三條線并行。這時(shí)候往往出現(xiàn)的一種情況是雖然也分支了,但是并不能管控所有人的提交時(shí)間,可能提交的時(shí)候會(huì)產(chǎn)生沖突,就需要解決沖突,配管員就是解決沖突的。還有一種就是在只有一個(gè)主干的時(shí)候,上線的時(shí)候通通往上交,交到最后發(fā)現(xiàn)又要去解決依賴的問題。所以這個(gè)時(shí)候自動(dòng)化就根本無(wú)法實(shí)施,交付的自動(dòng)化當(dāng)時(shí)對(duì)于我們來(lái)說(shuō)是非常難解決的問題但是云上解決了。
云效首先永遠(yuǎn)有一個(gè)保持正確的主干,來(lái)了一個(gè)需求之后,會(huì)有特性分支,并行的特性分支開發(fā)完之后。如果這三個(gè)需求都要上,那就從主干上打出一個(gè)集成分支到認(rèn)證環(huán)節(jié)去測(cè)。如果發(fā)現(xiàn)有問題有一個(gè)需求不能上,全部回滾回來(lái)把正確的兩個(gè)打出集成再往下走。所有的這些自動(dòng)化非常的快,不需要在里邊摘代碼,不需要查看沖突,都能快速的完成。
“鑫云”項(xiàng)目測(cè)試效能提升
在2016年新核心上線的時(shí)候上了一個(gè)新的系統(tǒng),核心系統(tǒng)對(duì)于一個(gè)銀行來(lái)說(shuō)相當(dāng)于信道,它的改動(dòng)會(huì)使其他系統(tǒng)得到改動(dòng),當(dāng)時(shí)這個(gè)系統(tǒng)的重建也是非常巨大的一個(gè)工程。在當(dāng)時(shí)的時(shí)候是沒有一個(gè)這樣好的自動(dòng)化的測(cè)試工具,所以當(dāng)時(shí)測(cè)試是一個(gè)非常耗成本的事情。到了“鑫云+”的時(shí)候我們也是核心,我們是全國(guó)首家商業(yè)銀行能夠?qū)崿F(xiàn)分布式核心的銀行。 “鑫云+”是一個(gè)通道式的平臺(tái),其實(shí)大部分的時(shí)候是沒有界面的,靠人工測(cè)界面是測(cè)不起來(lái)的,但是又希望提前去發(fā)現(xiàn)這些問題。所以更多的時(shí)候測(cè)試是要分層次的,更多的是對(duì)接口的測(cè)試針對(duì)服務(wù)的測(cè)試,把這些都測(cè)掉,別切云效能夠在它的系統(tǒng)里做自動(dòng)的留痕。保證再去重新跑一遍的時(shí)候只要是修改的測(cè)過(guò)的都能夠正確的上去。
“鑫云+”混合云架構(gòu)的安全策略管理
在這里要感謝云效,一開始是采用混合云的架構(gòu),在公有云上測(cè)試,在私有云上面生產(chǎn)。
這樣的話,就必須要有一個(gè)鏈路去通到公有云。云效在這里幫助做了一些安全策略,或多個(gè)中樞扭轉(zhuǎn)的這種設(shè)計(jì),使得我們既能滿足監(jiān)管要求也能夠無(wú)縫對(duì)接迭代快速的開發(fā)模式。
本文由云棲志愿小組陳歡整理編輯
總結(jié)
以上是生活随笔為你收集整理的云效助力新金融DevOps转型——南京银行实践之路的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Shell之awk常用用法
- 下一篇: Spark Streaming初步使用以