引言
本系列之前的文章介紹了組合商務服務 (CBS) 的概念,並討論了其需要的部 署環境的一些核心元素。本文將介紹多分租(即從共用的公用承載環境中為多個組織(客戶 )提供服務的能力)。另外還將介紹軟體作為服務(Software-as-a-Service,SaaS)的網路 交付方法及可能會利用 SaaS 多分租的不同使用者類型。我們將介紹在 SaaS 承載環境中支援 多分租的原則和技術實現。本文提供了使用 WebSphere® Process Server 和 WebSphere Portal、虛擬門戶和 Portlet 的複製與配置實現模式的多承租者平台實現。通過樣本,我們 還能瞭解如何對 Portlet 實現變更,以支援門戶角色的擴充設定檔資訊。本文將重點 討論為了支援訂閱者和終端使用者而對軟體服務和基於 Portlet 的使用者介面的設計更改。
多分租
在軟體作為服務 (SaaS) 模型(也稱為隨需應變軟體)中,服務的交 付(如使用 WSDL 描述的服務)以對服務提供者的軟體產品基於網路的訪問為基礎。此方法 與通過安裝機制的傳統壓縮打包軟體交付形成對比。典型的服務提供者在大型的資料中心承 載其軟體,並使用 Internet 交付商務服務。儘管本文中的樣本的重點是服務提供者為獨立 企業的具體案例,但服務提供者也可以為大型企業中的一個部門。
圖 1 描述了一個 SaaS 樣本。其中,Bank Account Opening 服務提供者承載 Account Opening 服務的實現, 而服務的每個訂閱者(承租者)都是銀行,如 First Bank 和 Second Canadian Bank。而每 個銀行反過來將向其客戶交付銀行特定的 Account Opening 服務配置。
圖 1. SaaS 樣本
構建 SOA 組合商務服務,第 1 部分: 開發 SOA 組合應用程式來支援商務服務 中給出了 銀行 SaaS 應用程式中角色的詳細樣本。第 1 部分將從服務提供者的公用共用承載環境支援 多個商務服務訂閱者(承租者)的能力稱為多分租。
多分租支援是整個運行時堆棧中 進行了全面考慮的設計理念。它要求對運行時環境拓撲、服務實現和使用者介面的所有層次加 以謹慎考慮。多承租者平台實現的選項涵蓋諸多方面:從基於硬體的方面到虛擬化技術方面 。在極端情況下,每個訂閱者可能均由一組專用硬體和軟體承載。此拓撲通過選擇在承載環 境中使用的實際硬體提供的多種選項為訂閱者提供了最大的靈活性。例如,可以通過選擇 CPU 來選擇具體的效能。還可以基於伺服器硬體選擇可靠性層級。不過,此拓撲可能開銷最 大,因為這將迫使提供者為訂閱者管理一系列專用伺服器。提供者可以通過為很多客戶共用 硬體來實現成本節約。例如,提供者可以通過在資料庫上安裝多個資料庫(每個客戶一個數 據庫)減少成本。提供者還可以共用應用伺服器的執行個體,以承載商務服務的多個執行個體。
從概念上來說,多承租者平台的選項範圍可以大致歸類為以下類別之一:
完 全不共用
共用物理伺服器
共用應用程式
務必認識到,即使在完全 不共用的環境中,也能從定義良好的拓撲、公用硬體/軟體產品定義和供參考的路線圖獲益。 共用伺服器類別相當廣泛,包括以下選項:
僅共用支援基礎設施(由 Tivoli® Provisioning Manager 之類的產品提供)
共用使用 Tivoli Access Manager 和 WebSeal 等產品實現的安全性功能
共用使用 DB2 等產品的資料庫服務
共用 中介軟體,如應用程式、流程和門戶伺服器
本文將討論最後的共用應用程式:在此環境中,整個堆棧(包括硬體和軟體)在整個使用者 群中實現重用;可以為各個訂閱者配置軟體(同時保留自訂選項)。
在本文下面的內容中,我們將瞭解如何?對多分租的支援。接下來將重點討論群組合應用 程式所需的三種核心服務類型,如圖 2 中所示。
圖 2. 組合應用程式服務