【技術分享】西門子Opcenter Execution Foundation 先進SOA架構
所屬頻道:新聞中心
一. SOA 架構
SOA 是一種支持服務導向的軟件體系架構風格,也正因如此,其設計目的在于靈活滿足業(yè)務上的需求。服務是可重復業(yè)務活動的邏輯單元。它是模塊化的,且模塊化程度可得到保證。同時也可以由其他服務構成,輕松擴展以滿足客戶需求。它是通過一個簡單并用易于訪問的對象來調用后端的功能,便于和復雜的邏輯進行交互。
點對點通訊向SOA服務的轉變:
服務導向(SO)是最新開發(fā)模型的演變。其代表了EAI 模式的演變(企業(yè)應用程序集成,也稱為輪輻式模式),該模式取代了 90 年代末所謂的點對點通信策略。
點對點通信策略意味著要直接調用屬于其他組件的對象。這個策略導致必須開發(fā)大量通信接口,才能夠集成數(shù)量相對較少的組件。
2 什么是SOA 體系架構中的企業(yè)服務總線?
企業(yè)服務總線是一組規(guī)則,可用于通過類似于總線的通信基礎結構將應用程序集成在一起。
在計算機或網絡中,對總線的描述是傳輸路徑,供連接到線路上的各設備發(fā)送或接收信號。只有由信號處理的設備會對其進行監(jiān)視;其他設備會將信號減弱。這個術語受公共汽車的啟示,類似于公共汽車在每個城鎮(zhèn)停車站讓乘車上車/下車。在類似總線的通信基礎結構中,您可以通過在它們之間放置通信總線并允許每個應用程序與總線進行對話,集成不同的應用程序。這個操作可讓各系統(tǒng)彼此分離,使其能夠獨立通信,各系統(tǒng)也不知道總線上的其他系統(tǒng)。這種模式的其中一個目標是降低SOA 中界面的復雜性并減少其數(shù)目。ESB 概念的提出是為了滿足棄用點對點集成的需求,因為這種方法的管理難度會逐漸增加。點對點集成導致定制集成代碼在應用程序之間傳播,沒有集中的方法對其進行監(jiān)視或疑難解答。這種代碼通常稱為“面條式代碼”且不能擴展,因為其在應用程序之間創(chuàng)建了緊密的相互依賴性。ESB使軟件能夠連接,即使軟件以不同的編程語言編寫,且在不同的平臺上運行也是如此。
基于ESB 的產品使用戶能夠構建 ESB 通信基礎結構,但執(zhí)行方式和所提供的功能各不相同。
Opcenter ExecutionFoundation (簡稱:Opcenter EXFN) 通過使用 RabbitMQ 服務總線來應用基于ESB 的模式。在制造空間中使用服務導向體系架構時,用戶可將體系架構看作擁有經過擴展的 ESB 或制造服務總線。制造服務總線可視作已定制的 ESB 模式,這種模式可針對基本MES 型功能實施基于標準的制造服務。
3 OpcenterEXFN 針對SOA的架構體現(xiàn)
Opcenter EXFN 的體系架構是按照Open Group 聯(lián)盟提出的面向服務的體系架構參考體系(SOARA) 設計而成。該參考體系架構由多層組成。每一層均對一組負責自行提供功能的體系架構構建塊 (ABB) 進行邏輯分組。
SOA 服務使用了松散耦合的概念。耦合是指一個組件對另一個組件的直接依賴度。在軟件和系統(tǒng)設計中,松耦合系統(tǒng)內的每個組件對其他組件的定義一知半解或者根本一無所知。松散耦合的概念與企業(yè)服務總線通信基礎設施相關。
Opcenter EXFN中的功能層分為水平層與垂直層兩種分組方式:
水平層
使用者層:表示使用者(例如,工作流、UI、BI等)與系統(tǒng)交互的級別。
使用者服務:提供的使用者服務為工程 UI、配置 UI 和主數(shù)據(jù)管理 UI。其他使用者服務可以由客戶的合作伙伴創(chuàng)建。
表示服務:為構建使用者提供的服務。
緩存服務:表示管理客戶端緩存的一組專用服務。
工藝層:將松散耦合的服務聚合為與制造業(yè)務目標相一致的排序工藝。
服務定義:可用于設計制造工藝服務(制造工作流)并將其定義為任務流。
服務層:包含在 SOA 模型中定義的所有服務。
服務定義:可分為以下類別的服務協(xié)定:工程、制造命令(可擴展)、域模型(可擴展)、文檔和基礎結構。
服務運行時支持:表示可以通過特定端點訪問服務的級別。
服務組件層:包含每個展示服務的實施和執(zhí)行。
服務實現(xiàn):實現(xiàn)展示服務的組件。可以添加定制組件來實現(xiàn)新的制造服務。其他服務是預定義的且不可擴展。域模型的服務組件無法擴展,但可以公開可擴展模型。
運行時:能夠執(zhí)行服務組件并將其綁定到展示協(xié)定的主機。
設計時間:包括開發(fā)、部署和發(fā)布服務組件的能力。
操作層:包含體系架構的所有運行時元素,此層可被視為運行時或解決方案部署。
虛擬化和基礎結構服務,比如硬件(物理或虛擬機器)。
運行時環(huán)境:包括操作系統(tǒng)的服務。
服務交付:在其上構建體系架構的所有其他系統(tǒng),如數(shù)據(jù)庫原有系統(tǒng)等。
垂直層
集成層:提供將請求從服務請求者調整到正確服務提供程序的功能。此功能包括轉換、路由和協(xié)議轉換。
通信:通過消息交換提供路由和信息傳輸功能的核心通信組件。
管理:提供日志記錄、跟蹤和審核功能的組件。
消息處理:包括生成和使用事件消息的組件。
QoS:負責集成層的服務質量。
服務質量層:提供各個方面(如可用性、可靠性和安全性)的QoS 管理,以及支持、追蹤、監(jiān)視和管理解決方案的機制。
QoS 服務:指由其他組件實現(xiàn)的功能的展示層的入口點。
安全管理:提供訪問控制、身份管理和數(shù)據(jù)隔離功能。
監(jiān)視和管理:包括監(jiān)視其他服務的可用性、性能和狀態(tài)的組件。
信息層:負責管理與 SOA 數(shù)據(jù)相關的所有信息的表示形式,如數(shù)據(jù)模型。
信息服務:是指由其他組件實現(xiàn)的功能的展示層的入口點。它公開所有數(shù)據(jù)訪問的統(tǒng)一視圖。
信息集成:在此類別中,存在核心信息功能,如事務管理、信息完整性和緩存。
基本信息管理:包括公開不透明數(shù)據(jù)(不能用數(shù)據(jù)模型表示,如平面文件等)訪問功能的組件。
信息定義:包括數(shù)據(jù)模型的定義及其在其他組件中使用的所有表示。
信息存儲庫:包括公開物理信息存儲庫(如數(shù)據(jù)庫、文件系統(tǒng)等)訪問功能的組件。
管理層:管理層提供運行整套 Opcenter EXFN組件所需的全部規(guī)則、策略和配置。
治理管理:包括以統(tǒng)一方式公開管理層所提供功能的組件。
治理存儲:提供對治理數(shù)據(jù)和元數(shù)據(jù)存儲的訪問。
(審核編輯: 智匯小新)