TOGAF 認證是 The Open Group 頒發(fā)的架構框架專業(yè)認證,是企業(yè)在規(guī)劃、設計、實施和管理 IT 架構時所使用的一種方法和標準。它提供了一個開放的、靈活的、可擴展的方法來構建、部署和管理企業(yè)的 IT 架構,幫助企業(yè)提高 IT 效率、降低成本、提高業(yè)務靈活性和創(chuàng)新能力。
中文名 TOGAF企業(yè)架構師認證英文名 The Open Group Architecture Framework英文簡稱 TOGAF頒證機構 The Open Group證書類別 企業(yè)架構(業(yè)務架構,數(shù)據(jù)架構,應用架構,技術架構)同類認證 SAFe for Architects 、CBA 在當今數(shù)字化時代,業(yè)務架構至關重要。究竟業(yè)務架構是什么?有哪些特點和難點?都有哪些發(fā)展階段和挑戰(zhàn)?它與中臺、微服務的關系是什么?業(yè)務架構師該怎么設計架構、做技術選型?
今天,小艾老師就跟大家講講業(yè)務架構的那些事。
01? 業(yè)務架構演進之路:從單體架構到微服務架構 業(yè)務架構并非簡單的組織架構圖或業(yè)務流程圖,它更像是一張“藍圖”,清晰地描述了企業(yè)的業(yè)務愿景、戰(zhàn)略目標、核心能力、業(yè)務結構、信息流以及關鍵業(yè)務流程。簡單來說,業(yè)務架構回答了“企業(yè)做什么、為誰做、怎么做”的核心問題 。
業(yè)務架構的演進跟業(yè)務的發(fā)展變化息息相關。
早期業(yè)務規(guī)模小,用單體架構就夠了,一臺服務器就能搞定。但隨著業(yè)務量越來越大,單體架構的弊端就暴露出來了:
代碼耦合度高,維護困難: ?各個模塊代碼相互交織,牽一發(fā)而動全身,難以定位和修復問題。開發(fā)效率低下: ?任何微小的改動都需要重新編譯和部署整個應用,開發(fā)周期長。擴展性差: ?難以針對特定模塊進行水平擴展,資源利用率低。可靠性低: ?任何模塊出現(xiàn)故障都會導致整個應用不可用。技術選型受限: ?整個應用只能使用同一套技術棧,難以引入新技術。為了解決這些問題,越來越多的企業(yè)開始向微服務架構轉型 。簡單來說,就是把一個龐大的系統(tǒng)拆分成多個獨立的小服務,每個服務負責一個特定的功能,可以獨立開發(fā)、測試、部署。
舉個例子:假設有一個用戶信息管理系統(tǒng),包含了注冊、登錄、信息維護、授權四個核心功能,使用單體架構時,所有的功能會被放在一起,而使用微服務架構時,它們可以被拆分成四個獨立的服務。
下面這張圖展示了在微服務架構實施過程中,“交付實踐”“架構原則”“戰(zhàn)略目標”之間的升維演化及支撐關系,供參考。
02 58 同城的業(yè)務架構整合之路
做業(yè)務架構,經(jīng)常會遇到的一個痛點:企業(yè)級的業(yè)務場景經(jīng)常發(fā)生變動,業(yè)務架構難以適應不同階段的業(yè)務特性。
拿 58 同城來說,_早是 Windows.NET 單體架構,后來發(fā)展大了,2010 年改成 Linux 平臺和 Java 語言,有了自己的 RPC 框架等中間件,業(yè)務架構由 Web 服務和多個 RPC 服務及 MySQL 存儲組成。
2015 年并購安居客、合并趕集網(wǎng)后,公司推進 BG(Business Group事業(yè)群)化,縱向將業(yè)務服務垂直拆分到各個 BG事業(yè)群,每條業(yè)務線可以獨立迭代、上線。同時橫向也進行架構拆分,成立企業(yè)級的技術中臺,負責通用技術能力的建設。
58同城并購安居客、合并趕集網(wǎng)后,_緊要的任務就是解決多平臺業(yè)務架構整合的問題。
比如房產業(yè)務,58 同城和安居客上都有,但客戶端和后端架構完全不同,得把它們打通。先得把 App 底層的公共組件統(tǒng)一,然后基于統(tǒng)一的公共組件重構業(yè)務代碼,讓兩個 App 的房產業(yè)務用同一份代碼,再靠不同的配置來實現(xiàn)差異化。同時把后端服務也整合一下,把所有底層系統(tǒng)打通,包括邏輯層和數(shù)據(jù)層的服務,這樣一個服務就能同時支持 58 和安居客兩個產品的業(yè)務,還能讓新老服務在線上平穩(wěn)進行切換。團隊就能同時做兩邊業(yè)務,一次開發(fā),兩網(wǎng)同時上線,效率大大提高。
03 從微服務到中臺 說到微服務,就不得不提中臺這個概念。
中臺可以理解為企業(yè)級的能力共享平臺,它把一些通用的業(yè)務能力沉淀下來,供各個業(yè)務線復用,避免重復造輪子。這樣可以大大提高開發(fā)效率,降低成本。
還是以 58 同城為例。
技術中臺: 58 同城內部有公司層面的技術中臺,負責通用技術能力的建設,例如運維、存儲、中間件、云平臺、搜索、數(shù)據(jù)平臺、AI 平臺、移動組件、即時通訊、安全、商業(yè)等。業(yè)務中臺: 公司內部還會建設業(yè)務中臺,比如在房產業(yè)務線,有:房源庫、樓盤字典、房產開放平臺、經(jīng)紀人服務等,都是統(tǒng)一建設,新房、二手房、租房、商業(yè)地產等業(yè)務線可直接復用。當然,中臺是一個更具包容性的概念,微服務并非中臺的全部,它整合多種能力與資源。除微服務外,還包括數(shù)據(jù)治理、業(yè)務流程優(yōu)化等多個方面。
04 業(yè)務架構,沒想象中那么簡單! 很多人覺得,業(yè)務架構嘛,不就是把各種技術“輪子”組裝起來,哪像底層技術那么高深?這話乍一聽好像有點道理,但實際上,業(yè)務架構師需要具備的能力一點也不比底層技術開發(fā)少。
首先,你得懂技術。 別的不說,基礎架構里那些“輪子”——云服務、數(shù)據(jù)庫、中間件等等,你得知道它們是干什么的,有什么優(yōu)缺點,才能根據(jù)實際情況做出_合適的選擇 ,而不是隨便抓一個就往上套。其次,你得懂業(yè)務。 你需要將復雜的業(yè)務場景抽象、分層、簡化,拆分給多個人協(xié)同開發(fā)。業(yè)務架構說到底還是為業(yè)務服務的,只有真正理解了業(yè)務需求,才能設計出既滿足當前需要,又能支持未來發(fā)展的架構方案。_后,你還得是個溝通高手。 業(yè)務架構設計可不是一個人的事兒,你需要跟產品、開發(fā)、測試等各個團隊打交道,你得把你的想法清晰地傳達給他們,才能__終方案的順利落地。
05 業(yè)務架構師的工作要點及挑戰(zhàn) 業(yè)務建模及中臺規(guī)劃方面:
做業(yè)務建模抽象,將架構拆解為表現(xiàn)層、邏輯層、數(shù)據(jù)層 ,把控每一層關鍵技術,了解上下游系統(tǒng)特性,做到心中有數(shù)。規(guī)劃業(yè)務中臺,抽象出共性部分,定義中臺的領域模型、服務邊界和接口規(guī)范, 并主導中臺的建設和演進,避免重復建設。關注數(shù)據(jù)規(guī)模和訪問量 這兩個重要業(yè)務參數(shù),它們對架構設計影響很大。考慮業(yè)務發(fā)展,預判未來變化 ,提前做好規(guī)劃,防止方案因業(yè)務需求改變而推倒重來。技術選型方面:
大公司的話,基礎架構成熟則優(yōu)先選內部技術以便聯(lián)動。 沒有現(xiàn)成技術,優(yōu)先選成熟開源方案,為二次開發(fā)準備。 調研云廠商,若有成熟且成本能接受的方案就用。 自建的話,就需要調研業(yè)界方案以借鑒經(jīng)驗思路。 云時代的新挑戰(zhàn):
隨著云計算的普及,業(yè)務架構也面臨著新的挑戰(zhàn)和機遇。一方面,云平臺提供了豐富的基礎設施和服務,可以幫助企業(yè)快速搭建和部署業(yè)務系統(tǒng);另一方面,云原生、Serverless 等新技術的出現(xiàn),也對業(yè)務架構的設計提出了更高的要求。
互聯(lián)網(wǎng)企業(yè)的業(yè)務規(guī)模增長迅猛,業(yè)務場景特性一天一變,對于業(yè)務架構的設計、實現(xiàn)乃至重構都提出了更多的要求。微服務和中臺已成為發(fā)展的大趨勢,然而,業(yè)務架構師除了微服務和中臺之外,還需要持續(xù)學習,不斷迭代自身的知識結構,從而滿足不斷變化的業(yè)務環(huán)境。
好了,今天小艾老師就說這么多。如果你想要學習和掌握更多業(yè)務架構 方面的知識和技能,小艾老師推薦大家參加CBA業(yè)務架構認證 ,或者TOGAF企業(yè)架構師認證 。