企業(yè)it架構的重要性不言而喻,隨著數(shù)字化轉型的推進,,不管大中型企業(yè)還是中小微企業(yè)都必須時刻保持危機意識,。前幾天看到老楊哥很經典的一句話,摘抄過來:活著不是粗放管理的借口,,要想當前活著且日后活的更好,,企業(yè)必須要做數(shù)字化轉型,。數(shù)字化不是精細化,,但是要想實現(xiàn)精細化管理,數(shù)字化不失為一種有效的手段,。 那么,,延展開來,既然要做數(shù)字化,,必須要盤活底層的IT治理能力,,一個行之有效的企業(yè)IT架構不失為一種可以盤活it治理能力的手段。
先來回顧一下這么多年以來,,企業(yè)IT架構的發(fā)展歷程,,每一階段的架構產物都在當前所處的時代發(fā)揮著重要的價值,而隨著互聯(lián)網的發(fā)展,,隨著人們生活水平的提高,,需求也越來越高,要求也越來越高,。 單體架構 – SOA架構 – 云原生微服務架構 單體架構架構比較典型的特征:煙囪式建設,,前后端業(yè)務流程和代碼邏輯混在一起,重復造輪子,,部署的載體一般是服務器單機,,隨時用戶量并發(fā)量上來之后,,在原有單體應用的基礎上,全盤拷貝多份,,形成負載均衡的態(tài)勢,。這個階段的應對能力還僅限在橫向的擴展(增加機器,升級配置),,重復建設,,部署效率低下,牽一發(fā)動全身的思路已經無法滿足多變的要求,,于是面向服務的SOA架構隨之出現(xiàn),, SOA的本質是將應用功能進行切割、解耦,,形成組件化,,標準化的邏輯功能單元,然后各組件化單元通過約束好的規(guī)范接口進行連接,。即便是現(xiàn)在的微服務架構的本質依然是延續(xù)了SOA的思想,。 但是在前幾年SOA架構橫行天下的時候,ESB企業(yè)服務總線也火了相當長的時間,,ESB本身可以將分散的各個服務進行組合,,集成和轉換,對外提供服務接口能力供新的應用程序調用,。但是ESB的本質是一個中心化的思想,,帶來統(tǒng)一集成便利和監(jiān)控的優(yōu)勢下,也必然存在他的中心化思想帶來的弊端,。 隨著虛擬化,,云計算, devops的興起微服務如雨后春筍般涌現(xiàn)和發(fā)展,,這么說還不完全準確,,個人覺得DevOps應該是在微服務流行起來之后的產物。微服務的核心是大拆小,,將大的單體應用拆分成小的可以獨立運行的個體單元,,各個微服務之間通過restApi接口調用。 微服務框架包含,,業(yè)務場景的梳理,,微服務的拆分,粗粒度的接口設計,,數(shù)據庫的拆分,,前后端分離,接口之間的集成和交互,api網關,,安全日志流量管控,,微服務的治理等等一些基礎概念。 正是因為微服務的特點,,將原來一個大的單體應用拆分了數(shù)個甚至數(shù)十個微小的服務,,每個服務都需要獨立的打包,構建,,編譯,,部署等一連串不復雜但是繁瑣的步驟,而微服務的細小顆粒度正好也符合容器輕量化運維部署的特點,,容器云和DevOps就可以一展拳腳了,。 關于云原生,DevOps,,微服務的詳細介紹在我去年的文章里也都提到,。這里不再展開。 《云原生技術學習筆記》,,《云原生技術DevOps》,,《云原生技術微服務》
那么隨之帶來一個問題,企業(yè)在選擇it架構的時候,,該如何選擇呢,?該不該直接上云原生微服務架構?這里沒法給出統(tǒng)一的答案,,因為每個公司的it治理能力,、治理水平不同,盲目上云原生微服務架構,,可能帶來開發(fā)運維門檻過高,,服務監(jiān)控,,微服務治理難度加大,,增加項目失敗的概率。 有的企業(yè)也有很多老的且正在運行的it系統(tǒng),,盲目大刀闊斧的重構,,可能帶來基礎業(yè)務支撐能力喪失,費錢費力最后效果還不好,。我也參閱了大量的文章和企業(yè)實施經驗來看,,對于業(yè)務需求變化快的系統(tǒng)采用微服務架構是一個不錯的選擇,他可以靈活應對快速多變的需求,,對于已有部分it系統(tǒng)的公司,,可以在此基礎上抽象出集成服務能力平臺,一方面原有的業(yè)務不受影響,,另外新抽象出來的能力服務平臺也可以支撐前臺業(yè)務的快速變化,,也為后續(xù)微服務改造提前儲備經驗,。
有了上一章節(jié)的企業(yè)IT架構的演進,推薦企業(yè)采用 “平臺 應用”的思路來實踐云原生微服務架構,。 云原生再簡單映射一下,,就是一系列技術實踐和管理實踐的結合。 技術實踐包含:微服務,,容器云,,service網格,無服務器化 管理實踐包含:敏捷開發(fā),,DevOps,, CI/CD持續(xù)集成持續(xù)部署 這一張圖反映了,技術架構作為底座,,數(shù)據架構作為支撐,,支撐業(yè)務架構和應用架構。而業(yè)務架構和應用架構有著嚴格的一一對應關系,。 再進一步拆分這幾層架構,,可以進一步理解“平臺 應用”的思路: “平臺 應用”的思路:
框架: 底層Iaas層資源 技術支撐能力 中臺(業(yè)務架構 數(shù)據架構) 創(chuàng)新能力
|
|
來自: Tomsp360lib > 《ICT》