Liberty:架構

Liberty 是一種高度可組合的動態執行時期環境。OSGi 服務用來管理元件生命週期,以及相依關係和配置的注入。 伺服器程序包含單一 JVM、Liberty 核心,以及任何數量的選用特性。 在 OSGi 架構內,特性碼和大部分核心碼都是以 OSGi 軟體組的方式來執行。 特性提供應用程式所需要的程式設計模型和服務。

圖 1. Liberty 架構
執行時期環境是一個包含核心、JVM 及任何數量的 Liberty 特性的 OSGi 架構。

核心啟動程式會引導系統及啟動 OSGi 架構。 這時會剖析配置,然後特性管理程式會載入已配置的特性。 核心會廣泛使用 OSGi 服務來提供高度動態的執行時期環境。「OSGi 配置管理」服務會管理系統配置,「OSGi 宣告式服務」元件會管理系統服務的生命週期。 檔案監視服務會偵測應用程式和配置檔的變更,記載服務會將訊息和除錯資訊寫入本端檔案系統中。

圖 2. Liberty 核心
 核心包括特性管理程式、檔案監視器、記載服務,以及各種用來進行配置管理及使用宣告式服務的 OSGi 資源。

特性指定在系統配置檔中,其中包括 server.xml 檔及任何其他併入檔。 伺服器配置檔會移入「OSGi 配置管理」服務中,特性配置會注入特性管理程式服務中。 特性管理程式會將每個特性名稱對映至一份提供特性的軟體組清單。 這些軟體組安裝在 OSGi 架構中,且已經啟動。 當伺服器在執行中,特性管理程式會藉由動態新增及移除特性來回應配置變更。

圖 3. 特性管理
「OSGi 配置管理」服務會從 server.xml 檔讀取配置,然後將特性配置注入特性管理程式中。特性管理程式會從提供各特性的軟體組中讀取軟體組清單,然後在 OSGi 架構中安裝及啟動這些軟體組。

執行時期服務會提供配置預設值,以便將您需要指定的配置保持在最低限度。 您在 server.xml 檔中指定您需要的特性,以及對於系統預設值的任何新增或置換設定。 您可以選擇利用 "include" 語法,將您的配置建構成若干鏈結至母項 server.xml 檔的個別檔案。 在伺服器啟動時,或當使用者配置檔有了改變,核心配置管理會剖析您的配置,且會在系統預設值上套用這個配置。 每次更新配置時,都會將屬於每個服務的配置內容集注入服務中。

圖 4. 配置管理
配置管理者會從核心中的軟體組讀取預設配置,且會在這個預設配置上套用使用者指定的配置,然後將合併的配置注入特性軟體組中。

使用「OSGi 宣告式服務」元件,以便將功能分解為只在需要時才啟動的離散服務。 這個行為會促使執行時期環境變成「延遲而消極」,可以保持較小的覆蓋區,以及較快的啟動速度。 宣告式服務會新增到 OSGi 服務登錄中,且無需載入實作類別,就可以解析服務之間的相依關係。 服務啟動可以延遲到使用服務之時,也就是解析服務參照之時。 當服務啟動時,會注入各項服務的配置,如果後來修改配置,會重新注入配置。


指示主題類型的圖示 概念主題



「時間戳記」圖示 前次更新: 2016 年 11 月 30 日
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=cwlp_arch
檔名:cwlp_arch.html