大型互聯(lián)網(wǎng)金融產(chǎn)品Devops應(yīng)用實(shí)踐

大型互聯(lián)網(wǎng)金融產(chǎn)品Devops應(yīng)用實(shí)踐

一、背景:A產(chǎn)品是平安集團(tuán)為金融機(jī)構(gòu)客戶(hù)提供集中信息服務(wù)绅络、跨平臺(tái)登陸、統(tǒng)一賬戶(hù)管理等多種服務(wù)的互聯(lián)網(wǎng)金融平臺(tái),其致力于匯集集團(tuán)內(nèi)外部的金融產(chǎn)品和服務(wù)屎慢,依托互聯(lián)網(wǎng)技術(shù)提供豐富的增值項(xiàng)目瞭稼,幫助金融機(jī)構(gòu)解決資產(chǎn)負(fù)債余缺,改善資產(chǎn)流動(dòng)性腻惠,提升交易效率环肘,降低操作風(fēng)險(xiǎn)集灌。

二、現(xiàn)狀:產(chǎn)品線(xiàn)剛成立時(shí)200多人臼隔,并快速?gòu)闹变N(xiāo)銀行切入泊愧,打造出產(chǎn)品交付給中小銀行客戶(hù)续崖。從2016年開(kāi)始,隨著簽約銀行項(xiàng)目增多阵面,交付壓力陡增,挑戰(zhàn)也越來(lái)越大嘶是,開(kāi)始進(jìn)入混沌狀態(tài)…

1酝蜒、 產(chǎn)品標(biāo)準(zhǔn)化嚴(yán)重不足,與銀行定制矛盾裁蚁,近70%的人力投入定制開(kāi)發(fā)毡鉴,甚至一般先做交付。

2秒赤、 需求脫節(jié)不一致猪瞬,不透明,跨地域入篮、跨部門(mén)陈瘦。

3、 基于組件化開(kāi)發(fā)潮售,首次新上線(xiàn)一家銀行痊项,100+配置文件,300+SQL文件酥诽,近百個(gè)jar包鞍泉,一堆的war包,隨著版本演進(jìn)盆均,版本配套混亂塞弊,不敢輕易升級(jí)。

4泪姨、 手動(dòng)移交游沿,部署過(guò)程經(jīng)常出錯(cuò),追溯困難肮砾,上線(xiàn)周期漫長(zhǎng)诀黍,首次上線(xiàn)達(dá)8天。

5仗处、 代碼分支蔓延眯勾,分支再拉分支,缺陷修復(fù)及收編導(dǎo)致維護(hù)成本持續(xù)增長(zhǎng)婆誓。

6吃环、 滿(mǎn)負(fù)荷運(yùn)作,為了交付洋幻,加班再加班應(yīng)對(duì)郁轻,通宵也是常見(jiàn)的,專(zhuān)業(yè)公司經(jīng)常被要求周末遠(yuǎn)程支持。

7好唯、 質(zhì)量問(wèn)題聚集竭沫,長(zhǎng)時(shí)期積壓600多個(gè)。

8骑篙、 銀行監(jiān)管難滿(mǎn)足蜕提,不同職責(zé)人員權(quán)限未做有效分離,研發(fā)效率低靶端。

9谎势、 士氣低下,一年時(shí)間人員流失變動(dòng)近半躲查。

……

三它浅、措施:基于目前這種狀況,敏捷教練應(yīng)邀入場(chǎng)镣煮,開(kāi)始進(jìn)行系統(tǒng)化思考、分析鄙麦,以業(yè)界Devops方法為基礎(chǔ)典唇,開(kāi)始著手從需求及構(gòu)架解耦、持續(xù)部署胯府、組織協(xié)作等方面進(jìn)行漸進(jìn)改進(jìn)介衔。

1、 架構(gòu)解耦骂因、定制與標(biāo)準(zhǔn)產(chǎn)品需求分離炎咖,并引導(dǎo)價(jià)值客戶(hù)回歸產(chǎn)品規(guī)劃主航道,做強(qiáng)標(biāo)準(zhǔn)寒波,統(tǒng)一需求乘盼,分層、分級(jí)管理;進(jìn)一步進(jìn)行可擴(kuò)展設(shè)計(jì)俄烁,架構(gòu)解耦绸栅,進(jìn)行組件化、插件化页屠。

2粹胯、 流程現(xiàn)狀梳理,分別討論制定標(biāo)版流程及Site實(shí)施流程

a辰企、 標(biāo)版流程:規(guī)劃需求及銀行標(biāo)準(zhǔn)需求承載风纠,迭代開(kāi)發(fā)后經(jīng)驗(yàn)證,進(jìn)入制品庫(kù)牢贸。

b竹观、 Site應(yīng)邀實(shí)施流程:需求匹配組件,大部分從制品庫(kù)中選擇十减,少量進(jìn)入標(biāo)準(zhǔn)需求開(kāi)發(fā)團(tuán)隊(duì)栈幸,少量定制實(shí)施開(kāi)發(fā)承載

3愤估、 基礎(chǔ)設(shè)施及代碼,結(jié)構(gòu)化配置規(guī)范梳理

一切設(shè)施都進(jìn)行版本控制

分別討論制定標(biāo)準(zhǔn)組件代碼規(guī)范速址、PAPP業(yè)務(wù)配置規(guī)范玩焰、基礎(chǔ)設(shè)施配置規(guī)范、數(shù)據(jù)庫(kù)腳本配置規(guī)范芍锚,所有設(shè)施都通過(guò)SVN進(jìn)行配置管理昔园,其中敏感信息如密碼等,采用通配符方式在CMDB中配置并炮。并開(kāi)始基于一個(gè)Site進(jìn)行規(guī)范整改試點(diǎn)默刚,逐步調(diào)整推動(dòng)新site完成代碼、結(jié)構(gòu)規(guī)范化整改

4逃魄、 代碼分支收編回主干整改

我們梳理其中一個(gè)新site試點(diǎn)實(shí)施時(shí)荤西,發(fā)現(xiàn)約60%的組件基于分支進(jìn)行演進(jìn)開(kāi)發(fā),如下圖標(biāo)黃部分伍俘,主干收編困難邪锌,維護(hù)成本持續(xù)增長(zhǎng)

痛定思痛,決定做一次整改癌瘾,首先從試點(diǎn)項(xiàng)目涉及的組件開(kāi)始觅丰,推動(dòng)架構(gòu)組與產(chǎn)品一起進(jìn)行,經(jīng)過(guò)一周多的時(shí)間妨退,基本完成試點(diǎn)Site的整改妇萄,并開(kāi)始推動(dòng)其他組件分支收編回主干,如下其中已做整改的site咬荷。

5冠句、 持續(xù)交付部署流程整理

a、 標(biāo)準(zhǔn)產(chǎn)品需求萍丐,進(jìn)入模塊標(biāo)準(zhǔn)產(chǎn)品團(tuán)隊(duì)轩端,組件開(kāi)發(fā)測(cè)試后,發(fā)布進(jìn)入制品庫(kù)

b逝变、 銀行實(shí)施產(chǎn)品基茵,從制品庫(kù)選擇對(duì)應(yīng)組件和版本,以及從SVN上取出對(duì)應(yīng)的配置文件和war包壳影、DB腳本拱层,一鍵部署到測(cè)試、生產(chǎn)環(huán)境

6宴咧、 神兵Wizard工具方案設(shè)計(jì)應(yīng)用

建立兩層工作空間根灯,產(chǎn)品層、子項(xiàng)目組件層。各子項(xiàng)目組件層進(jìn)行需求烙肺、版本纳猪、部署管理,發(fā)布?xì)w檔制品庫(kù)桃笙。產(chǎn)品銀行層氏堤,建立需求、版本搏明,選擇制品庫(kù)組件版本鼠锈,進(jìn)行部署發(fā)布

7、 質(zhì)量?jī)?nèi)建星著,自動(dòng)化測(cè)試inner接入

通過(guò)持續(xù)集成平臺(tái)部署完成后购笆,調(diào)起自動(dòng)化接口測(cè)試,保障高效質(zhì)量

8虚循、 組織協(xié)作

a同欠、全功能團(tuán)隊(duì):一旦交付項(xiàng)目立項(xiàng),則組建跨領(lǐng)域PM邮丰、前端行您、后臺(tái)、測(cè)試剪廉、運(yùn)維一體化團(tuán)隊(duì)。

b炕檩、交付項(xiàng)目總體規(guī)劃斗蒋、清晰里程碑

c、相互承諾:Team對(duì)PO的承諾納入迭代能按時(shí)完成笛质,PO對(duì)Team的承諾迭代中不輕易增加變更需求泉沾,PM對(duì)團(tuán)隊(duì)的承諾,排除項(xiàng)目外干擾妇押,保障項(xiàng)目高效運(yùn)作跷究。每個(gè)迭代開(kāi)始前,發(fā)出明確的迭代計(jì)劃敲霍。

d俊马、保持穩(wěn)定的版本節(jié)奏,測(cè)試前置肩杈,及時(shí)參與測(cè)試驗(yàn)收反饋柴我,及時(shí)修改。

e扩然、透明化艘儒,進(jìn)度、質(zhì)量、風(fēng)險(xiǎn)等界睁,通過(guò)早會(huì)觉增、自動(dòng)化、持續(xù)集成翻斟、周報(bào)逾礁,每日下班前問(wèn)題風(fēng)險(xiǎn)同步等,及時(shí)可視化出來(lái)杨赤。

四敞斋、應(yīng)用狀況:通過(guò)以上措施,經(jīng)歷了近半年時(shí)間的不斷迭代試點(diǎn)應(yīng)用疾牲,根據(jù)反饋不斷調(diào)整漸進(jìn)改變植捎,在產(chǎn)品中開(kāi)始應(yīng)用起來(lái)。

1阳柔、 模塊接收主動(dòng)規(guī)劃需求焰枢,以及由銀行site分配過(guò)來(lái)的需求,實(shí)現(xiàn)需求協(xié)作管理backlog管理舌剂、看板進(jìn)度可視化管理济锄。需求分層分級(jí)管理,實(shí)現(xiàn)全量需求池霍转。銀行需求與模塊開(kāi)發(fā)組件協(xié)作管理荐绝。

2、 銀行Site與組件版本配套協(xié)作高效管理避消,實(shí)現(xiàn)各版本演進(jìn)可追溯

3低滩、 特性需求看板,以精益看板的方法為特性的端到端交付建立可視化價(jià)值流岩喷,驅(qū)動(dòng)交付過(guò)程的持續(xù)優(yōu)化恕沫,現(xiàn)實(shí)小批量快速流程為目標(biāo)

4、 銀行Site自動(dòng)化構(gòu)建纱意,部署流水線(xiàn)婶溯,為從代碼提交到發(fā)布至生產(chǎn)整個(gè)過(guò)程建立可視化、可追溯的受控流水線(xiàn)偷霉,整合持續(xù)集成迄委、環(huán)境配置、數(shù)據(jù)庫(kù)變更腾它、應(yīng)用部署等所有自動(dòng)化過(guò)程跑筝。一鍵高效發(fā)布部署測(cè)試及生產(chǎn),并可進(jìn)行回滾瞒滴。

5曲梗、 復(fù)雜產(chǎn)品多流水構(gòu)建情況全景瀏覽

6赞警、 研發(fā)與生產(chǎn)分離,部署計(jì)劃提前知道

運(yùn)維部署確認(rèn)后虏两,一鍵部署到生產(chǎn)環(huán)境愧旦。以具有版本控制的腳步來(lái)自動(dòng)化管理所有應(yīng)用構(gòu)建,環(huán)境配置定罢、數(shù)據(jù)庫(kù)等笤虫,保證所有基礎(chǔ)設(shè)施的建立和變更都以抑制的方式進(jìn)行。

五祖凫、效果:目前整體方案已經(jīng)在新Site中推廣應(yīng)用琼蚯,并取得一定的效果:

? 規(guī)模化應(yīng)用:銀行site上線(xiàn)10家惠况,60+條部署流水線(xiàn)持續(xù)運(yùn)轉(zhuǎn)中遭庶,新Site逐步實(shí)施中。

? 標(biāo)準(zhǔn)化產(chǎn)品增強(qiáng)稠屠,成本降低:通過(guò)需求引導(dǎo)峦睡、定制與標(biāo)準(zhǔn)分離、以及架構(gòu)解耦权埠,需求定制降至10%左右榨了,100+組件按版本規(guī)范化制品庫(kù)管理,研發(fā)成本大幅降低攘蔽。

? 研發(fā)效率大幅提升:一天多發(fā)龙屉,增量版本按需交付;標(biāo)版組件部署從約半小時(shí)提升到秒級(jí);新site部署上線(xiàn)從近一周縮減到小時(shí)級(jí)。

? 基礎(chǔ)設(shè)施及流程規(guī)范化管理:所有設(shè)施進(jìn)入版本控制管理满俗,代碼分支蔓延遏制叔扼,版本配套混亂、版本升級(jí)風(fēng)險(xiǎn)有效解決漫雷,實(shí)現(xiàn)部署記錄可追溯,質(zhì)量大幅提升鳍咱,有效滿(mǎn)足銀行監(jiān)管降盹。

? 影響:為首家基于Pafa5研發(fā)模式管理試點(diǎn)落地,為其他專(zhuān)業(yè)公司提供借鑒參考谤辜,多個(gè)專(zhuān)業(yè)公司產(chǎn)品已開(kāi)始參照該研發(fā)管理模式改進(jìn)蓄坏。

? 開(kāi)放平臺(tái)建設(shè)進(jìn)一步探索中,后臺(tái)平臺(tái)化丑念,前臺(tái)通過(guò)接口接入涡戳,甚至開(kāi)放前臺(tái)給客戶(hù)自己開(kāi)發(fā)。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末脯倚,一起剝皮案震驚了整個(gè)濱河市渔彰,隨后出現(xiàn)的幾起案子嵌屎,更是在濱河造成了極大的恐慌,老刑警劉巖恍涂,帶你破解...
    沈念sama閱讀 216,997評(píng)論 6 502
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件宝惰,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡再沧,警方通過(guò)查閱死者的電腦和手機(jī)尼夺,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,603評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)炒瘸,“玉大人淤堵,你說(shuō)我怎么就攤上這事∏昀” “怎么了拐邪?”我有些...
    開(kāi)封第一講書(shū)人閱讀 163,359評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)屎即。 經(jīng)常有香客問(wèn)我庙睡,道長(zhǎng),這世上最難降的妖魔是什么技俐? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,309評(píng)論 1 292
  • 正文 為了忘掉前任乘陪,我火速辦了婚禮,結(jié)果婚禮上雕擂,老公的妹妹穿的比我還像新娘啡邑。我一直安慰自己,他們只是感情好井赌,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,346評(píng)論 6 390
  • 文/花漫 我一把揭開(kāi)白布谤逼。 她就那樣靜靜地躺著,像睡著了一般仇穗。 火紅的嫁衣襯著肌膚如雪流部。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 51,258評(píng)論 1 300
  • 那天纹坐,我揣著相機(jī)與錄音枝冀,去河邊找鬼。 笑死耘子,一個(gè)胖子當(dāng)著我的面吹牛果漾,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播谷誓,決...
    沈念sama閱讀 40,122評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼绒障,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了捍歪?” 一聲冷哼從身側(cè)響起户辱,我...
    開(kāi)封第一講書(shū)人閱讀 38,970評(píng)論 0 275
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤鸵钝,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后焕妙,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體蒋伦,經(jīng)...
    沈念sama閱讀 45,403評(píng)論 1 313
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,596評(píng)論 3 334
  • 正文 我和宋清朗相戀三年焚鹊,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了痕届。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,769評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡末患,死狀恐怖研叫,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情璧针,我是刑警寧澤嚷炉,帶...
    沈念sama閱讀 35,464評(píng)論 5 344
  • 正文 年R本政府宣布菠赚,位于F島的核電站谅阿,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏缩抡。R本人自食惡果不足惜隧膏,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,075評(píng)論 3 327
  • 文/蒙蒙 一哗讥、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧胞枕,春花似錦杆煞、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,705評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至派桩,卻和暖如春构诚,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背铆惑。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,848評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工唤反, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人鸭津。 一個(gè)月前我還...
    沈念sama閱讀 47,831評(píng)論 2 370
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像肠缨,于是被迫代替她去往敵國(guó)和親逆趋。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,678評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容