銀行IT系統架構鬆耦合設計的思考,寫得深入,透徹,程序員Get到了

銀行IT系統架構松耦合設計的思考,寫得深入,透徹,程序員Get到了

我從事銀行IT行業十餘年,目前從事銀行IT項目管理的工作,後期我會持續輸出關於銀行業務和IT系統知識及項目經驗分享的文章和視頻,感興趣的朋友可以關注一下!

在計算機應用領域裡,信息系統架構的松耦合是最需要關注和最重要的內容,對於銀行的IT系統來說松耦合的設計也是必須要重點關注的,其中包括:

組件松耦合

銀行IT系統架構松耦合設計的思考,寫得深入,透徹,程序員Get到了

對於比較大的信息系統,我們會人為地將其劃分為若干個大的組件,以便能對系統進行更好的規劃與管理。能夠實現相互之間松耦合的組件,我們稱之為構件。

構件應該有如下特徵,以實現構件間松耦合的目標:

 有清晰的功能;

 封裝實現功能的數據;

 可以獨立配置、安裝、運行、更新、替換;

 與外界的接口是標準接口;

 與運行的硬、軟件沒有強依賴關係,能低成本的在不同環境裡被移植、重用。


接口松耦合

組件松耦合的一個條件是使用標準接口。標準接口的最主要的定義是:

  • 中立

標準接口應該獨立於實現服務的硬件平臺、操作系統和編程語言。

  • 自描述(自解析)

標準接口包含了對本身有效數據的完整描述。

  • 成為一定範圍的標準

由於接口是在一定範圍內被遵守的標準,能隔離使用標準接口的組件內部的變化,使之相互松耦合。

銀行IT系統架構松耦合設計的思考,寫得深入,透徹,程序員Get到了

應用與數據松耦合

在計算機應用發展的初期,人們對應用與數據的關係沒有嚴格的定義。通常是所有數據都放在那裡,誰需要哪些數據誰就直接訪問那些數據。這樣,應用與數據之間是多對多的關係:

銀行IT系統架構松耦合設計的思考,寫得深入,透徹,程序員Get到了

圖-1.4 應用與數據

顯然,用我們松耦合的觀點,上圖所示的是一種多對多的耦合,而多對多肯定不算是松耦合。

要使應用與數據松耦合,我們採取數據封裝的做法。具體是:

 信息系統的所有數據都被分別封裝在不同的應用裡面。

 應用裡面的數據只能通過該應用本身去操作。

 當其他邏輯單元要訪問封裝在某個應用裡的數據時,要向該應用提出數據服務要求,由該應用提供相應的數據。

這樣,我們能做到應用與數據實現一對一的關係。


結構松耦合

為了儘量減少多對多的耦合,信息系統在大組件間採用總線結構的耦合方式。把耦合從多對多變為一對一,降低組件之間的耦合度:

銀行IT系統架構松耦合設計的思考,寫得深入,透徹,程序員Get到了

圖-1.5 網狀結構變成總線結構

總線結構實現了任何一個組件只與一個組件(總線)耦合,達到松耦合目的。

把應用與數據的松耦合與結構松耦合疊加在一起,如圖1.6 所示:

銀行IT系統架構松耦合設計的思考,寫得深入,透徹,程序員Get到了

圖-1.6 應用、數據、結構松耦合

對比一下圖-1.4,結構是否簡單了很多。

銀行IT系統架構松耦合設計的思考,寫得深入,透徹,程序員Get到了

程序與硬、軟件平臺松耦合

應用架構松耦合還要求應用程序與其運行平臺沒有強依賴關係。就是說,應用與數據的設計,應該使之能低成本的在不同的平臺上移植與重用。運行平臺包括:

  • 硬件

大機或開放平臺服務器,不同廠家不同品牌的服務器。

  • 軟件

不同的操作系統、平臺、編程語言、數據庫。


我從事銀行IT行業十餘年,目前從事銀行IT項目管理的工作,後期我會持續輸出關於銀行業務和IT系統知識及項目經驗分享的文章和視頻,感興趣的朋友可以關注一下!


分享到:


相關文章: