天天看點

資訊化系統總體架構設計學習筆記(四)——技術架構

作者:旋迪蘭

說明:本内容學習筆記是總結于哔哩哔哩平台人月聊IT 何老師的視訊。有想詳細學習的可以看他的視訊,會受益匪淺!

一、技術架構分析

基于不同的業務需求和技術發展,通常建構技術架構有兩種:

一種是傳統的單體技術架構;

一種是微服務技術架構。

資訊化系統總體架構設計學習筆記(四)——技術架構

傳統架構到微服務架構的過程

二、技術架構規劃内容

1、傳統單體架構規劃

傳統的資訊化IT建設,它是一種煙囪式的建設模式。這種模式下面,首先底層它統一了IaaS虛拟化資源池,上面的應用的建設仍然是豎井式的一個煙囪一個煙囪的建設,每個應用它底層有一個小的技術平台,上面也分了多個功能子產品,這些功能子產品它往往是緊耦合在一起的,應用和應用之間往往是通過SOA內建平台或是通過ESB總線去實作資料的內建,接口的互動。

是以在傳統的技術架構規劃中,更多是做的IaaS虛拟化資源池的,具體包括:

① 整體的IT實體部署架構的規劃,在這個部裡部署架構中需要考慮整個資料庫的叢集,應用中間件叢集、負載均衡,核心網、交換機;

②IT邏輯架構圖,實體部署架構更多的關心存儲、伺服器、交換機和網絡,在IT邏輯架構規劃,會關心資料庫伺服器有幾台、消息伺服器有幾台、緩存伺服器有幾台、上層的APP應用叢集有幾台,這樣會形成一個IT的邏輯架構規劃視圖;

③俠義的技術架構規劃,在整個應用開發過程中,對于存儲和持久化層、應用層、邏輯層、前端展示層,究竟應該用哪一些技術,這一些技術體系把它形成一張完整的分層的技術架構圖。比如在資料持久層會用到結構化資料庫、非結構化資料庫、Redis緩存、ActiveMQ消息中間件;在應用層會用到SpringCloud微服務開發架構、API網關;在前端展示層會用到VUE的前端技術、JS技術。這些就會形成一個完整的支撐應用開發的一個技術架構體系的圖,這仍然可以是作為技術架構規劃的一個部分。

2、微服務技術架構規劃

微服務架構 是平台+應用的架構

PaaS平台包含:開發平台、執行平台、運維監控平台、DevOps支撐平台。

随着整個SOA,雲原生計算技術的發展,企業整體的應用建設逐漸從傳統的單體架構轉到微服務架構。對于雲計算也是逐漸從隻管IaaS虛拟化資源池提升到要去更多的去管共性化的平台層能力,逐漸轉變為平台+應用的建設模式。這個平台就是PaaS這樣的一個技術中台,在這個平台裡面傳統的單體應用裡面的小的技術中台逐漸沒有了,這些共性的技術能力,全部建構到統一的技術平台裡面,這個技術平台仍然可以按軟體開發生命周期,分為開發平台、執行平台、運維監控平台。

比如:微服務開發架構,低代碼開發把它納入開發平台裡面;基于Kubernetes容器雲資源排程平台、提供的消息、安全、日志、緩存各種共性的技術服務能力納入到執行平台裡面;對于覆寫從資源到服務,從服務到應用的整個大的監控平台,包括實微服務以後的整個微服務管控治理統一納入治理管控平台。

底層的共性平台形成後,上層的應用開發就會和傳統的單體應用一樣。我們隻需要開發關心的業務實作的微服務子產品,上層的微服務子產品的開發,怎麼跟底層的平台更好的去內建和協同,怎樣從微服務的需求設計、開發、測試、部署、傳遞整個鍊條的自動化高度的靈活和流水線作業,在這個過程中引入一個覆寫整個微服務端到端開發和傳遞,實作了持續內建和持續部署能力的DevOps平台。目前在去做雲原生平台整個規劃的時候,也會把DevOps支撐平台納入到整個平台的規劃體系中,這就形成了一個完整個平台層的架構規劃。

3、總結

随着微服務雲原生技術的發展和傳統IT架構的轉型,在給企業做整體的資訊系統規劃、企業架構規劃的時候,對于技術架構層面一定要做雲原生技術中台的規劃,隻有做好了才能真正實作平台+應用這種快速建構的模式。

随着企業的發展,從IaaS層技術規劃到PaaS層的規劃,如果企業做網際網路SaaS對外的應用,還是需要從PaaS規劃轉到SaaS平台的規劃,所有的SaaS應用仍然需要一個SaaS平台。比如多租戶如何設計、多中心如何設計,這都屬于SaaS平台層規劃的内容,這些仍然需要納入到整個技術架構規劃體系裡面。

三、名稱解釋

IaaS:Infrastructure as a Service,即基礎設施即服務。它是一種雲計算服務,提供了按需、按量付費的計算、存儲和網絡資源,通過網際網路通路。它讓企業不需要自己購買、配置或管理基礎設施,而隻需支付使用的資源。

PaaS:Platform as a Service,是指平台即服務。它是一種雲計算模式,提供了一個完整的雲平台,包括硬體、軟體和基礎設施,讓客戶可以在雲端開發、運作和管理應用,而不需要在本地建設和維護這個平台。

SaaS: Software as a Service,是軟體即服務。它是一種雲計算服務,讓使用者通過網際網路連接配接和使用雲端的應用程式。使用者不需要在本地安裝、維護和更新軟體,而隻需按使用時間或功能付費。

DevOps:Development和Operations的組合詞,是一組過程、方法與系統的統稱,用于促進開發(應用程式/軟體工程)、技術營運和品質保障(QA)部門之間的溝通、協作與整合。它是一套實踐和工具,将軟體開發(Dev)和IT運維(Ops)的工作內建和自動化,以提高和縮短系統開發生命周期。

繼續閱讀