在 SOA 系統(tǒng)中不同的功能模塊可以被分為7層:第一層就是系統(tǒng)已經(jīng)存在的程序資源,例如ERP或者CRM系統(tǒng)等。第2層就是組件層,在這一層中我們用不同的組件把底層系統(tǒng)的功能封裝起來。第3層就是 SOA 系統(tǒng)中最重要的服務(wù)層,在這層中我們要用底層功能組件來構(gòu)建我們所需要的不同功能的服務(wù)。總的來說,SOA 中的服務(wù)可以被映射成具體系統(tǒng)中的任何功能模塊,但是從功能性方面可以大致劃分為以下三種類型:(1)商業(yè)服務(wù)(business service) 或者是商業(yè)過程(business PRocess)。這一類的服務(wù)是一個企業(yè)可以暴露給外部用戶或者合作伙伴使用的服務(wù)。比如說提交貸款申請,用戶信用檢查,貸款信用查詢。(2)商業(yè)功能服務(wù)(business function service), 這類服務(wù)會完成一些具體的商業(yè)操作,也會被更上層的商業(yè)服務(wù)調(diào)用,不過大多數(shù)情況下這類服務(wù)不會暴露給外部用戶直接調(diào)用,比如說檢索用戶帳戶信息,存儲用戶信息等。(3)技術(shù)功能服務(wù)(technical function service),這類服務(wù)主要完成一些底層的技術(shù)功能,比如說日志服務(wù)以及安全服務(wù)等。在服務(wù)層之上的第4層就是商業(yè)流程層,在這一層中我們利用已經(jīng)封裝好的各種服務(wù)來構(gòu)建商業(yè)系統(tǒng)中的商業(yè)流程。在商業(yè)流程層之上的就是第5層表示層了,我們利用表示層來向用戶提供用戶接口服務(wù),這一層可以用基于portal的系統(tǒng)來構(gòu)建。以上這5層都需要有一個集成的環(huán)境來支持它們的運行,第6層中的企業(yè)服務(wù)總線(ESB)提供了這個功能。第7層主要為整個 SOA 系統(tǒng)提供一些輔助的功能,例如服務(wù)質(zhì)量治理,安全治理這一類的輔助功能。2. SOA 架構(gòu)中的非功能性服務(wù)級別(service-level)需求除了系統(tǒng)的業(yè)務(wù)需求,架構(gòu)設(shè)計師還必須要保證構(gòu)建出來的系統(tǒng)架構(gòu)能夠滿足系統(tǒng)中的非功能性服務(wù)級別(service-level)需求以及服務(wù)質(zhì)量(QoS)方面的需求。在項目初始及細化階段,架構(gòu)設(shè)計師應(yīng)該與系統(tǒng)所有涉及方(Stakeholders)一起,為每一個服務(wù)級別需求定義其相關(guān)的衡量標準。構(gòu)建出的系統(tǒng)架構(gòu)必須要能滿足以下幾方面的服務(wù)水準要求:性能、可升級性、可靠性、可用性、可擴展性、可維護性、易治理性以及安全性。架構(gòu)設(shè)計師在設(shè)計架構(gòu)過程中需要平衡所有的這些服務(wù)級別需求。例如,假如服務(wù)級別需求中最重要的是系統(tǒng)性能,架構(gòu)設(shè)計師很有可能不得不在一定程度上犧牲系統(tǒng)的可維護性及可擴展性,以確保滿足系統(tǒng)性能上的要求。隨著互聯(lián)網(wǎng)的發(fā)展,新構(gòu)建的系統(tǒng)對于服務(wù)級別需求也變得日益重要,現(xiàn)在基于互聯(lián)網(wǎng)的企業(yè)系統(tǒng)的用戶已經(jīng)不僅僅局限于是本企業(yè)的雇員,企業(yè)的外部客戶也會成為企業(yè)系統(tǒng)的主要用戶。架構(gòu)設(shè)計師的職責之一就是要盡可能地為提高系統(tǒng)設(shè)計人員和系統(tǒng)開發(fā)人員的工作效率考慮。在構(gòu)建整個企業(yè)系統(tǒng)架構(gòu)的過程中,需要充分重視各種服務(wù)級別需求,從而避免在系統(tǒng)開發(fā)和運行的時候出現(xiàn)重大問題。一個企業(yè)級系統(tǒng)中的服務(wù)級別需求往往是十分錯綜復(fù)雜的, SOA 架構(gòu)設(shè)計師需要憑借豐富的專業(yè)經(jīng)驗和扎實的理論知識來分離和抽象系統(tǒng)中不同的服務(wù)級別需求,圖3展示了這種分析的過程。
新聞熱點
疑難解答