![]() | |
Sun Java Enterprise System 2004Q2 技術摘要 |
第 4 章
生命週期概念以 Java Enterprise System 軟體為基礎的業務解決方案包含一組複雜的工作,它們可以分為三個生命週期階段 (如圖 4-1 所示)。
本章介紹每個階段涉及的工作,討論與每個階段有關的概念與術語:
需求分析在生命週期的需求分析 階段,您可以將企業需求的分析轉化為部署方案。部署方案是部署設計的規格說明書。
需求分析階段可分為三個時期,如圖 4-1 所示:
邏輯架構以及效能、可用性、安全性和其它服務品質需求共同封裝在部署方案中,如下圖所示。如需有關生命週期需求分析階段的更多資訊,請參閱 「Java Enterprise System 部署計劃白皮書」。
圖 4-2 部署方案中的需求分析結果
部署在生命週期的部署階段中,將部署方案轉化為部署設計,接著在生產環境中實現、建立原型並建置。
部署程序不僅要視解決方案的邏輯架構而定,同時也要依據效能、可用性、安全性、延展性、服務性以及其它服務品質需求的情況。換句話說,部署架構的服務品質因素在部署階段佔有非常重要的作用。
部署程序一般包含支援應用程式所需的所有層級與所有基礎架構服務層中的軟體元件。因此,除了您可以部署到實體環境中的任何特定分散式應用程式元件 (J2EE 元件、Web 服務或其它伺服器) 以外,您還必須部署支援應用程式所需的 Java Enterprise System 元件 (系統元件)。
一般來說,部署階段是涉及許多工作的複雜的反覆式過程。本節將研究這一過程的以下兩個時期:
部署設計
在部署設計時期,將建立高階部署架構,接著進行低階的實現設計:
部署架構
建立部署架構的方法如下:在符合部署方案中所指定的服務品質需求的前提下,將應用程式 (邏輯架構) 的邏輯建構區塊對應至實體運算環境。
換句話說,將部署方案轉化為部署架構,如下圖所示。
圖 4-3 部署方案轉化為部署架構
此架構設計的一個方面是確定實體環境的大小,以符合效能、可用性、安全性以及其它服務品質的需求。確定大小之後,您可將系統伺服器與應用程式元件指定給實體環境中的運算節點。產生的部署架構必須將不同運算節點的能力、系統基礎架構服務的特性以及總擁有成本或總可用成本的限制等等因素考慮在內。
部署方案中的 Java Enterprise System 元件數目愈大,服務品質需求愈高,也就愈加要求您的設計建立在高能力運算節點與高網路頻寬之上。如果硬體受到限制或者過分昂貴,您可能必須在固定成本 (硬體) 與變動成本 (人力資源需求) 之間,或是不同的服務品質需求之間有所取捨,或者您也可能必須增加設計的複雜程度。
由於設計部署架構並非屬於精密的科學,因此架構經常以反覆的方式演進。您應逐漸擴充現有系統,即發現瓶頸,調整硬體或修改架構,以移除瓶頸。
作為部署設計的起點,Java Enterprise System 正在開發一套參照部署架構。參照架構以特定的部署方案為基礎:具有特定服務品質需求的邏輯架構。在參照架構中,應用程式在符合部署方案中指定的所有服務品質需求的前提下,跨特定的實體環境來部署。效能測試與部署方案開發基於相同的一組使用案例。
根據參照部署架構或參照架構的組合,您可以設計出第一個近似符合您的部署方案需求的部署架構。您可以調整參照架構或使用參照架構作為參照點,將您自己的部署方案與參照架構的基礎部署方案之間的差異因素考慮在內。透過這種方式,您可以評估大小設定、效能、安全性、可用性、容量與服務性需求所帶來的影響。
實現設計
實現設計提供了實現部署架構所需要的詳細資訊。包括指定實際硬體、作業系統、網路結構以及實體環境的其它方面。詳細的設計規格也可以包括指定所需要的目錄資訊,以便佈建一般使用者,允許其存取系統服務。
部署實現
部署實現以實現設計為起點,由以下一般性工作組成:
這些工作的順序可以改變:部署過程在本質上是具反覆性的。然而,下列的子節將按通常的執行順序分別討論每個主要的部署工作。
硬體增建
實現設計指定實體環境的配置:電腦、網路設計、網路硬體 (包括纜線、交換器、路由器和負載平衡器)、儲存裝置等等。所有項目都需要組裝為將支援以 Java Enterprise System 為基礎的解決方案的硬體平台。
軟體安裝
實現設計會告訴您哪些應用程式元件及 Java Enterprise System 元件駐留在實體環境中的每個電腦節點上。您可以使用 Java Enterprise System 整合式安裝程式將不同的系統元件與共用元件安裝在每台電腦上。
安裝程式及其功能在 Java Enterprise System 整合式安裝程式中有說明。
系統配置
若要使不同的系統元件在一起運作,成為整合的系統,您必須完成某些系統配置工作。啟動每個個別的系統元件還需要一些初始的配置步驟,而這些步驟可能要視是否首先啟動第一個元件所依賴的另一個系統元件而定。例如,若要配置並啟動 Identity Server,必須先啟動 Directory Server,因為後者依賴於寫入到目錄中的 LDAP 模式延伸。
在任何情況下,都必須先對每個 Java Enterprise System 元件進行配置,使之與其所依賴的元件通訊,然後再內部配置屬意的功能集。必須視每個元件的可用性實現,設定高可用性。需要佈建使用者,使他們能夠存取各種服務,需要設定認證與授權控制。
如需有關使用者佈建、認證、單次登入和授權的資訊,請參閱整合式身份識別與安全性服務。
自訂與開發
一般來說,部署方案中指定的邏輯架構決定著實現解決方案所需的自訂與開發工作的範圍。
對於某些解決方案,可能只需自訂現有系統伺服器 (例如 Portal Server) 便可達成需要的功能。如果是這種情況,在繼續自訂之前,您通常僅需執行一些微小的測試,以確定您的系統已成功地配置。
至於其它的解決方案,開發工作量可能非常大,需要您使用在 Application Server 或 Web Server 環境中執行的 J2EE 元件從頭開發新的業務與展示服務。如果是這種情況,您最好建立解決方案的原型並執行概念驗證測試,然後再著手進行完整的開發。
如果解決方案需要大量的開發工作,Java Enterprise System 並不提供用於設計分散式元件或 Cluster 服務的工具。您可從 Sun Java Studio 獲得這些工具,它簡化了 Java Enterprise System 基礎架構所支援的應用程式的設計與測試過程。
測試
有時,視自訂或開發工作程度的不同,您可能需要檢查部署架構。換句話說,您需要根據使用案例測試解決方案,並檢查您是否能夠符合服務品質的需求。
假使您擁有相對少的自訂開發服務 (基本即開即用的部署),您可以對系統進行模型測試。但是,如果您開發了基本全新的應用程式邏輯並建立了自訂服務,測試工作可能更繁重。
如果在測試中暴露出部署架構存在不足,您需要修改架構並重新測試。透過這一反覆性的過程,最終會獲得可隨時部署到生產環境中的部署架構與實現。
生產建置
生產建置涉及在生產環境中增建部署實現。此時期包括生產環境中安裝、配置與啟動分散式應用程式與基礎架構服務,佈建生產系統一般使用者,設定單次登入、存取策略以及類似物件。通常以有限的部署開始,逐漸發展至整個組織的實現。在此過程中,將進行試驗執行,在試驗中逐步加大負載,以確認系統符合服務品質需求。
作業在生命週期的作業階段中,執行部署的應用程式,監控與最優化其效能並將應用程式升級,使之包括新的功能。
Java Enterprise System 2004Q2 不提供共用的監控與管理基礎架構或管理工具,來進行整體的系統管理。每個系統元件都有其本身的管理工具,用來配置、調校或管理其作業。目標是在未來為 Java Enterprise System 提供整個系統層級的管理。