【CTO訓(xùn)練營(yíng)】CTO的第一把刷子——優(yōu)秀的架構(gòu)設(shè)計(jì)能力
CTO訓(xùn)練營(yíng),是由51CTO高招主辦的,***專(zhuān)業(yè)性的中高端技術(shù)人才培養(yǎng)組織。CTO作為企業(yè)中的技術(shù)***人,技術(shù)一定是安家立業(yè)之本,必須要有兩把技術(shù)硬刷子,出色的架構(gòu)設(shè)計(jì)能力便是其一。CTO的第1課,我們就來(lái)說(shuō)一說(shuō)這些架構(gòu)的1、2、3事兒。
3月26日CTO訓(xùn)練營(yíng)在北京珠三角JW萬(wàn)豪酒店順利開(kāi)營(yíng),51CTO副總裁、51CTO學(xué)院創(chuàng)始人邱文平精彩的開(kāi)場(chǎng)為今天的課程打開(kāi)序幕。
邱文平 51CTO副總裁 51CTO學(xué)院創(chuàng)始人
***季學(xué)員合影
在風(fēng)起云涌的互聯(lián)網(wǎng)時(shí)代,邀請(qǐng)三位來(lái)自一線(xiàn)知名的技術(shù)大咖導(dǎo)師,結(jié)合親身經(jīng)歷,現(xiàn)身說(shuō)法,幫助中高層的技術(shù)管理者對(duì)技術(shù)架構(gòu)有了清晰定位和認(rèn)識(shí)。
坑多不怕 就怕總近一個(gè)坑
來(lái)自雪球***架構(gòu)師唐福林,提出在一個(gè)初創(chuàng)公司的架構(gòu)搭建的開(kāi)始階段,會(huì)隨著時(shí)間的推移而逐漸面臨很多個(gè)坑,當(dāng)坑出現(xiàn)時(shí)需要吸取經(jīng)驗(yàn)并在接下來(lái)的設(shè)計(jì)中避免他們。
導(dǎo)師分享在雪球初期snowball 系統(tǒng)從起初運(yùn)轉(zhuǎn)良好的一年之后,隨著業(yè)務(wù)的膨脹,代碼的增長(zhǎng),團(tuán)隊(duì)的擴(kuò)張,漸漸出現(xiàn)了很多問(wèn)題,比如重復(fù)代碼,比如代碼不夠規(guī)范,比如測(cè)試?yán)щy,比如溝通成本越來(lái)越高,比如不相干的功能在實(shí)現(xiàn)上存在耦合等等的問(wèn)題出現(xiàn)。
針對(duì)較重要問(wèn)題技術(shù)團(tuán)隊(duì)分別采取了對(duì)癥下藥的措施:針對(duì)業(yè)務(wù)膨脹,開(kāi)始模塊化改造,將底層基礎(chǔ)模塊抽取成公共庫(kù),做到代碼級(jí)的服用;針對(duì)代碼量增長(zhǎng)過(guò)快的問(wèn)題,采取一種在國(guó)內(nèi)互聯(lián)網(wǎng)公司不太常見(jiàn)的措施:引入一種描述能力更強(qiáng)的語(yǔ)言 scala;針對(duì)團(tuán)隊(duì)的擴(kuò)張,推行一種工程師文化:鼓勵(lì)大家使用新的更好的技術(shù)和工具,鼓勵(lì)大家制造更多的工具和輪子,鼓勵(lì)大家交流分享。
架構(gòu)設(shè)計(jì)之大道至簡(jiǎn)
滴滴出行***架構(gòu)師李令輝風(fēng)趣生動(dòng)的大道至簡(jiǎn)理論,總結(jié)既然架構(gòu)是為了讓人類(lèi)不需要同時(shí)面對(duì)過(guò)高的復(fù)雜性,那么簡(jiǎn)單就是最核心的訴求,架構(gòu)師的工作本質(zhì)就是管理復(fù)雜度。所有架構(gòu)師設(shè)計(jì)出來(lái)的東西都是一次保終身,組織結(jié)構(gòu)和業(yè)務(wù)形態(tài)都在不斷變化,架構(gòu)也要適應(yīng)的發(fā)生變化。
用多套支付代碼;和業(yè)務(wù)耦合在一起;支付對(duì)一致性要求遠(yuǎn)遠(yuǎn)高于普通邏輯,要求完全不一樣;擴(kuò)展性很差,接入新的內(nèi)部系統(tǒng)或者其他外部系統(tǒng)非常困難;已有的系統(tǒng)依賴(lài)于單庫(kù)事務(wù),當(dāng)訂單量持續(xù)增加拆庫(kù)拆表就會(huì)破壞事務(wù),一致性就沒(méi)有了,用這幾個(gè)內(nèi)容講述了滴滴支付涅槃重生的故事。
選擇去事務(wù)化的方式,因?yàn)槭聞?wù)的一致性保障太強(qiáng),強(qiáng)的沒(méi)有用,而2-phase commit足夠了,不再依賴(lài)于單庫(kù)事務(wù)就以為著可以***的分庫(kù)分表,這種做法不見(jiàn)得多fancy,但是很有效。有意在支付這個(gè)事情上選擇最穩(wěn)妥最土鱉的做法,而不是去追趕時(shí)髦,這樣不容易出錯(cuò)。
技術(shù)保障的價(jià)值與方案
秒拍網(wǎng)架構(gòu)師王春生2004年加入sina,導(dǎo)師自我評(píng)價(jià)自己是一個(gè)不安分的工程師,經(jīng)歷過(guò)SA、DBA、產(chǎn)品開(kāi)發(fā)、系統(tǒng)分析師和架構(gòu)設(shè)計(jì)師、客戶(hù)端開(kāi)發(fā)、系統(tǒng)開(kāi)發(fā)等工作,多年保持一線(xiàn)戰(zhàn)斗狀態(tài),最近兩年致力于打造手機(jī)微博技術(shù)保障體系。王春生表示在大數(shù)據(jù)業(yè)務(wù)量中,架構(gòu)起不到?jīng)Q定性的保障,而決定技術(shù)保障的是用工程實(shí)施和問(wèn)題解決來(lái)支撐業(yè)務(wù)快速向前;用系統(tǒng)監(jiān)控和風(fēng)險(xiǎn)挖掘來(lái)規(guī)避架構(gòu)風(fēng)險(xiǎn);用完善軟件工程體系和完善基礎(chǔ)架構(gòu)來(lái)完善業(yè)務(wù)以及開(kāi)發(fā)所需基礎(chǔ)設(shè)施。
在這場(chǎng)激情如火的技術(shù)管理思想碰撞的盛宴中,三位風(fēng)格各具特色的導(dǎo)師,圍繞技術(shù)架構(gòu)師在團(tuán)隊(duì)決策與技術(shù)決策力展開(kāi)分享,而現(xiàn)場(chǎng)的50位技術(shù)人學(xué)員分別來(lái)自百度、優(yōu)酷、傳統(tǒng)行業(yè)轉(zhuǎn)型公司的CTO、技術(shù)經(jīng)理和一些創(chuàng)業(yè)公司的合伙人等對(duì)本次分享也非常滿(mǎn)意,并且針對(duì)自身向?qū)熢?xún)問(wèn)了一些問(wèn)題。
1、 如何推進(jìn)好的工程師文化?
2、 當(dāng)面臨有風(fēng)險(xiǎn)的決策中,如何說(shuō)服管理層批準(zhǔn)你的方案?
3、 創(chuàng)業(yè)階段的公司技術(shù)架構(gòu)也演變,要在那些階段做哪些事兒?
4、 代碼質(zhì)量如何把控?
5、 怎樣管理技術(shù)人員?
…………
導(dǎo)師細(xì)心地講解了學(xué)員部分困惑,而接下來(lái)課程我們將針對(duì)以上問(wèn)題邀請(qǐng)相關(guān)的專(zhuān)家導(dǎo)師做更深入的分享。
點(diǎn)擊鏈接,了解更多訓(xùn)練營(yíng)內(nèi)容: http://x.51cto.com/act/