標籤:問題 方式 體系架構 耦合 監視 hybrid 破壞 call 微服務
Atitit 軟體架構方法的進化與演化cs bs soa roa msa attilax總結
1.1. 軟體體系架構是沿著單機到 CS 架構,再到 BS 的三層架構甚至多層架構逐步發展過來的,關於多層架構 1
1.2. 主進化路線Cs》》 bs 》》 SOA》》MSA(微服務架構1
1.3. 1
1.4. 面向資源體系架構(ROA)1
1.4.1. 管道和過濾器風格(資料流風格)2
1.5. 資料抽象與物件導向風格(調用/返迴風格)2
1.6. 基於事件的隱式調用風格(獨立構件風格)2
1.7. 層次系統風格(調用/返迴風格)3
1.8. 參考資料3
2. 4
軟體架構知識圖譜n科技樹
1.1.
軟體體系架構是沿著單機到 CS 架構,再到 BS 的三層架構甚至多層架構逐步發展過來的,關於多層架構
1.2.
主進化路線Cs》》 bs 》》 SOA》》MSA(微服務架構1.3.
hybrid
1.4.
面向資源體系架構(ROA)
基於 REST 的軟體體繫結構風格(Software Architecture Style)稱之為面向資源體系架構(Resource-oriented Architecture,ROA
1.4.1.
管道和過濾器風格(資料流風格)
在管道/過濾器風格的軟體體繫結構中,每個構件都有一組輸入和輸出,構件讀輸入的資料流,經過內部處理,然後產生輸出資料流。這個過程通常通過對輸入資料流的變換及增量計算來完成,所以在輸入被完全消費之前,輸出便產生了。因此,這裡的構件被稱為過濾器,這種風格的串連件就像是資料流傳輸的管道,將一個過濾器的輸出傳到另一過濾器的輸入。此風格特別重要的 過濾器必須是獨立的實體,它不能與其它的過濾器共用資料,而且一個過濾器不知道它上遊和下遊的標識。一個管道/過濾器網路輸出的正確性並不依賴於過濾器進 行增量計算過程的順序。
管道/過濾器風格的軟體體繫結構具有許多很好的特點:
(1)使得軟構件具有良好的隱蔽性和高內聚、低耦合的特點;
(2)允許設計者將整個系統的輸入/輸出行為看成是多個過濾器的行為的簡單合成;
(3)支援軟體重用。重要提供適合在兩個過濾器之間傳送的資料,任何兩個過濾器都可被串連起來;
(4)系統維護和增強系統效能簡單。新的過濾器可以添加到現有系統中來;舊的可以被改進的過濾器替換掉;
(5)允許對一些如輸送量、死結等屬性的分析;
(6)支援並存執行。每個過濾器是作為一個單獨的任務完成,因此可與其它任務並存執行。
但是,這樣的系統也存在著若干不利因素。
(1)通常導致進程成為批處理的結構。這是因為雖然過濾器可增量式地處理資料,但它們是獨立的,所以設計者必須將每個過濾器看成一個完整的從輸入到輸出的轉換。
(2)不適合處理互動的應用。當需要增量地顯示改變時,這個問題尤為嚴重。
(3)因為在資料轉送上沒有通用的標準,每個過濾器都增加瞭解析和合成資料的工作,這樣就導致了系統效能下降,並增加了編寫過濾器的複雜性。
1.5.
資料抽象與物件導向風格(調用/返迴風格)
抽象資料類型概念對軟體系統有著重要作用,目前軟體界已普遍轉向使用物件導向系統。這種風格建立在資料抽象和物件導向的基礎上,資料的表示方法和它們的相應操作封裝在一個抽象資料類型或對象中。這種風格的構件是對象,或者說是抽象資料類型的執行個體。對象是一種被稱作管理者的構件,因為它負責保持資源的完整性。對象是通過函數和過程的調用來互動的。
1.6.
基於事件的隱式調用風格(獨立構件風格)
基於事件的隱式調用風格的思想是構件不直接調用一個過程,而是觸發或廣播一個或多個事件。系統中的其它構件中的過程在一個或多個事件中註冊,當一個事件被觸發,系統自動調用在這個事件中註冊的所有過程,這樣,一個事件的觸發就導致了另一模組中的過程的調用。
從體繫結構上說,這種風格的構件是一些模組,這些模組既可以是一些過程,又可以是一些事件的集合。過程可以用通用的方式調用,也可以在系統事件中註冊一些過程,當發生這些事件時,過程被調用。
基於事件的隱式調用風格的主要特點是事件的觸發者並不知道哪些構件會被這些事件影響。這樣不能假定構件的處理順序,甚至不知道哪些過程會被調用,因此,許多隱式調用的系統也包含顯式調用作為構件互動的補充形式。
支援基於事件的隱式調用的應用系統很多。例如,在編程環境中用於整合各種工具,在資料庫管理系統中確保資料的一致性約束,在使用者介面系統中管理資料,以及在編輯器中支援語法檢查。例如在某系統中,編輯器和變數監視器可以登記相應Debugger的斷時間點事件。當Debugger在斷點處停下時,它聲明該事件,由系統自動調用處理常式,如編輯程式可以卷屏到斷點,變數監視器重新整理變數數值。而Debugger本身只聲明事件,並不關心哪些過程會啟動,也不關心這些過程做什麼處理。
隱式調用系統的主要優點有:
(1)為軟體重用提供了強大的支援。當需要將一個構件加入現存系統中時,只需將它註冊到系統的事件中。
(2)為改進系統帶來了方便。當用一個構件代替另一個構件時,不會影響到其它構件的介面。
隱式調用系統的主要缺點有:
(1)構件放棄了對系統計算的控制。一個構件觸發一個事件時,不能確定其它構件是否會響應它。而且即使它知道事件註冊了哪些構件的構成,它也不能保證這些過程被調用的順序。
(2)資料交換的問題。有時資料可被一個事件傳遞,但另一些情況下,基於事件的系統必須依靠一個共用的倉庫進行互動。在這些情況下,全域效能和資源管理便成了問題。
(3)既然過程的語義必須依賴於被觸發事件的上下文約束,關於正確性的推理存在問題。
1.7.
層次系統風格(調用/返迴風格)
層次系統組織成一個階層,每一層為上層服務,並作為下層客戶。在一些層次系統中,除了一些精心挑選的輸出函數外,內部的層只對相鄰的層可見。這樣的系統中構件在一些層實現了虛擬機器(在另一些層次系統中層是部分不透明的)。串連件通過決定層間如何互動的協議來定義,拓撲約束包括對相鄰層間互動的約束。
1.8.
參考資料
基於面向服務體系架構(SOA)和面向資源體系架構(ROA)的業務組件模型.html
經典軟體架構模式_博學睿智深藏_新浪部落格.html
作者:: 綽號:老哇的爪子claw of Eagle 偶像破壞者Iconoclast image-smasher
捕鳥王"Bird Catcher 王中之王King of Kings 虔誠者Pious 宗教信仰捍衛者 Defender Of the Faith. 卡拉卡拉紅鬥篷 Caracalla red cloak
簡稱:: Emir Attilax Akbar 埃米爾 阿提拉克斯 阿克巴
全名::Emir Attilax Akbar bin Mahmud bin attila bin Solomon bin adam Al Rapanui 埃米爾 阿提拉克斯 阿克巴 本 馬哈茂德 本 阿提拉 本 所羅門 本亞當 阿爾 拉帕努伊
常用名:艾提拉(艾龍), EMAIL:[email protected]
頭銜:uke總部o2o負責人,全球網格化項目創始人,
uke宗教與文化融合事務部部長, uke宗教改革委員會副主席
,Uke部落首席大酋長,
uke制度與重大會議委員會委員長,uke保安部首席大隊長,uke制度檢查委員會副會長,
奶牛科技cto ,uke 首席cto 技術總監 研發總監 研發主管 部門總監
uke玻里尼西亞區大區連鎖負責人 湯加王國地區負責人。
uke克爾格倫群島區連鎖負責人,萊恩群島區連鎖負責人,
uke波維特島和南喬治亞和南桑威奇群島大區連鎖負責人
Uke軟體標準化協會理事長理事長 uke終身教育學校副校長
Uke 資料庫與儲存標準化協會副會長 uke出版社編輯總編
Uke醫院 與醫學院方面的創始人
轉載請註明來源:attilax的專欄 ?http://www.cnblogs.com/attilax/
--Atiend
2.
Atitit 軟體架構方法的進化與演化cs bs soa roa msa attilax總結