国产欧美另类视频第一页-国产视v频一区二区三区不卡视频-国产精品亚洲v无码播放-亚洲欧美三级另类

SOA概述

SOA團隊 2020-03-16

SOA是一種架構模型,它可以根據需求通過網絡對松散耦合的粗粒度應用組件進行分布式部署、組合和使用。服務層是SOA的基礎,可以直接被應用調用,從而有效控制系統中與軟件代理交互的人為依賴性。

SOA的關鍵是“服務”的概念,W3C將服務定義為:“服務提供者完成一組工作,為服務使用者交付所需的最終結果。最終結果通常會使使用者的狀態發生變化,但也可能使提供者的狀態改變,或者雙方都產生變化”。

Service-architecture.com將SOA定義為:“本質上是服務的集合。服務間彼此通信,這種通信可能是簡單的數據傳送,也可能是兩個或更多的服務協調進行某些活動。服務間需要某些方法進行連接。所謂服務就是精確定義、封裝完善、獨立于其他服務所處環境和狀態的函數?!?/p>

Looselycoupled.com將SOA定義為:“按需連接資源的系統。在SOA中,資源被作為可通過標準方式訪問的獨立服務,提供給網絡中的其他成員。與傳統的系統結構相比,SOA規定了資源間更為靈活的松散耦合關系?!?/p>

Gartner則將SOA描述為:“客戶端/服務器的軟件設計方法,一項應用由軟件服務和軟件服務使用者組成……SOA與大多數通用的客戶端/服務器模型的不同之處,在于它著重強調軟件組件的松散耦合,并使用獨立的標準接口?!?/p>

Gartner相信BPM和SOA的結合對所有類型的應用集成都大有助益:“SOA極大的得益于BPM技術和方法論,但是SOA面臨的真正問題是確立正確的企業意識,即:強化戰略化的SOA計劃(針對供應和使用)并鼓勵重用?!?/p>

雖然不同廠商或個人對SOA有著不同的理解,但是我們仍然可以從上述的定義中看到SOA的幾個關鍵特性:一種粗粒度、松耦合服務架構,服務之間通過簡單、精確定義接口進行通訊,不涉及底層編程接口和通訊模型。

綜合以上,結合SOA咨詢和實踐的經驗,可以對SOA給出更加容易理解的定義即SOA本身是一種架構方法論,該方法論的重點是找尋到企業業務系統內可以復用的服務,這些服務同時具備粗粒度,離散,松耦合,無狀態等基本服務特征;同時這些服務可以靈活的進行服務組合,服務組裝和編排,以靈活快速的滿足業務的變化。

再舉個簡單的例子來說明SOA:傳統的活字印刷術,用于印刷的3000-4000個字即是最基礎的原子服務,有了這些原子服務我們很容易通過這些活字去排版整篇文章。文章內容有調整我們也只是需要調整這些原子服務的順序。但是如果全是單個漢字我們其實排版工作量還是很大,所以再向上我們會出現詞組或常用短句,這些即是組合服務,這樣我們排版速度可以增加。但是可以看到詞組或短語的可重用程度降低了。所以越到組合服務或流程服務,復用越困難,但是要是能夠復用卻能大大提升效率。

Open Group SOA Reference Architecture 標準提出了一種基于 SOA 解決方案的參考架構。它提供了 SOA 分區和分解到層的高度抽象,每一層都提供一組 SOA 解決方案所需的功能。

上述SOA參考架構,可以分為9大層次:

操作系統層:操作和 IT 系統層可捕獲組織的基礎架構、包括新的和已有的,這是在設計、部署和運行時支持 SOA 解決方案所必需的。該層代表實際運行時基礎架構和運行在該基礎架構上的其他 SOA 架構的交叉點。另外,它也是底層基礎架構即服務 (Infrastructure as a Service, IaaS) 結構和廣泛的云計算背景中其他 SOA 架構的交叉點。該層的關鍵要求將在 “功能” 小節進行介紹,其中描述了滿足那些需求的功能。

服務組件層:服務組件層包含軟件組件,每個軟件組件提供服務或者服務上操作的實施或 “實現”。該層也包含功能和技術組件,方便服務組件實現一個或多個服務。服務組件在其功能以及其管理和服務交互質量中反映它們所代表的服務定義。它們將服務合同 “綁定” 到操作和 IT 系統層的服務實現中。服務組件駐留在支持服務規范的容器中。服務組件層通過包裝和支持松耦合實現 IT 靈活性。關注點分離就是這樣,消費者假設其服務實現忠實于其出版描述(服務合規性),并且供應商保證已實現此種合規性。實現的細節對于消費者來說無關要緊。因此,供應商組織可能會決定使用一個有相同描述的組件替換另一個,而不會影響服務消費者。

服務層:服務層由所有在 SOA 中定義的邏輯服務構成。該層包含在設計過程中使用/創建的服務、業務功能和 IT 表現形式的描述,以及在運行時使用的合同和描述。服務層是一個平行層,提供 SOA 中支持的業務功能,并介紹 SOA 中支持的服務的功能。

業務流程層:業務流程層包含流程表示、構成方法和構建塊,聚合松耦合服務使其成為一個與業務目標保持一致的有序流程。數據流和控制流用來支持服務和業務流程之間的交互。交互可能存在于一個企業中,也可能跨多個企業。SOA 參考架構中的業務流程層在連接業務水平要求和 IT 級解決方案組件中充當一個中央協調角色,通過與集成層、服務質量層、信息架構層以及服務層協作完成。

消費者層:消費者層是消費者的入口,不管是人、程序、瀏覽器或者自動操作,以及與 SOA 相互作用都可從此切入。這使得一個 SOA 解決方案可以支持一個客戶端獨立的、通道不可知的功能集,通過一個或多個通道(客戶端平臺或設備)獨立消費以及開出賬單。所以說它是所有內外部交互式消費者(人類或者其他應用程序/系統)和服務(例如,B2B 場景)之間的切入點。該層提供快速創建前端業務流程和綜合應用程序的功能,以響應市場變化。它使得通道能夠獨立訪問那些應用程序和平臺所支持的各種業務流程。消費者和其余底層 SOA 的解耦為組織提供支持敏捷性、增強重用以及提高質量和一致性的能力。

集成層:集成層是一個橫切關注點,支持和提供調節能力,包括變換、路由和協議轉換,從服務發起者向正確服務提供者傳輸服務請求。它支持實現一個 SOA 所需的功能,比如路由、協議支持和轉換、消息傳遞/交互風格、異構環境支持、適配器、服務交互、服務實現、服務虛擬化、服務消息傳遞、信息處理和轉換。集成層也負責維護松耦合系統中存在的解決方案一致性。這里出現的集成主要是服務組件、服務和流程層(“功能” 層)的集成。例如,這就是流程執行的服務的綁定(否則就晚了)。這允許一個服務可以跨多個面向客戶的通道長期公開。

服務質量層:服務質量層也是一個橫切關注點,支持 SOA 相關關注點的非功能性需求 (NFR),為在任何給定解決方案中處理它們提供一個焦點。它還提供確保 SOA 滿足以下需求的方法:監測、可靠性、可用性、可管理性、事務性、可維護性、可擴展性、安全性、安全、生命周期,等等。它與傳統 FCAPS(過失、配置、會計、性能、安全)范圍相同,從 ITIL 到 RAS(從可靠性、可用性、適用性),保持將同種管理和監控應用到今天的商業領域,對于管理服務和 SOA 解決方案來說是非常重要的,可能需要擴展來處理面向自然的服務和許多 SOA 解決方案的跨域邊界。

信息架構層:信息層也是一個橫切關注點,負責以統一的表示形式呈現一個組織其各方面信息,正如其 IT 服務、應用程序和系統所提供的那樣,保證業務需求和流程與業務詞匯(詞匯表和術語)保持一致。該層包括信息架構、業務分析和業務智能、元數據因素,確保包括關于信息架構的關鍵因素,也可被用于作為通過數據集市和數據倉庫實現業務分析和業務智能創建的基礎。這包括存儲在這一層的元數據內容。它也支持信息服務功能,使一個虛擬化信息數據層功能得以實現。這一層也使得 SOA 能夠支持數據一致性和數據質量一致性。

治理層:治理層也是一個橫切關注點,確保一個組織中的服務和 SOA 解決方案遵守定義策略、指導方針和標準,這些均定義為一個應用于組織中的目標、策略和規章的功能,一個 SOA 解決方案將提供所需的業務價值。SOA 治理活動應該符合 Corporate、IT 和 Enterprise Architecture 治理準則和標準。治理層將被用來匹配和支持組織的目標 SOA 成熟度等級。

返回上頁