Liberty 群體中的性能管理會偵測一般問題,並根據所配置的性能原則來產生診斷動作,以防服務中斷。性能管理功能是利用兩個 Liberty 特性(性能管理程式和性能分析器)來啟用。
開始之前
- 建立您想監視的環境。在建立性能原則時,請謹記原則的目標(伺服器、叢集或主機)。
- 如果您想獲得性能管理特性的完整功能,建議同時啟用自動調整特性和動態遞送特性。如需相關資訊,請參閱設定 Liberty 群體的自動調整和設定 Liberty 群體的動態遞送。
- 所收集的資源使用率資訊類型,會因 JRE/JDK 而異。請前往 developerWorks 網站上的
http://www.ibm.com/developerworks/java/jdk/index.html,並針對您的作業系統下載
IBM JRE/JDK。developerWorks 網站不提供適用於所有作業系統的 JRE。比方說,若為 Windows 作業系統,您必須從 Eclipse 取得 JDK。
下列適用於 Windows 和 Linux 作業系統的 IBM Java 版本提供所有必要的使用率資訊,建議使用這種 JRE/JDK。
- Java 8
- Java 7 Fix Pack 8 及以上
- Java 6 Fix Pack 7 及以上
註: 「性能檢測中心」會在
/tmp 空間中產生
tmp 暫存檔,視
/tmp 空間限制而定,您可能希望變更
java.io.tmpdir,以免填滿
/tmp 空間,一旦填滿,可能在某些平台上造成無法復原的問題。
-Djava.io.tmpdir=/path/to/tmpdir
關於這項作業
您可以為一般的伺服器性能條件,建立性能原則。如需相關資訊,請參閱性能管理。
您也可以為性能條件指派下列動作:
- 擷取診斷資料(資料堆傾出和執行緒傾出)
- 重新啟動伺服器
- 讓伺服器進入維護模式
- 讓伺服器結束維護模式。這是用於相同的性能原則內,其中,先前的動作先進入維護模式,之後再執行其他動作。
觀看:視訊:Liberty 群體的性能管理提供性能管理的概觀,並示範如何協助您尋找和紓解您 Liberty 應用程式中的問題。[文字稿]
程序
- 建立群體。 如需建立群體控制器和成員伺服器的詳細資料,請參閱配置 Liberty 群體。
- 在一或多個群體控制器的 server.xml 檔中,將 healthManager-1.0 特性新增至 feature manager 段落。此特性只能新增至群體控制器。
<featureManager>
<feature>jsp-2.2</feature>
<feature>collectiveController-1.0</feature>
<feature>healthManager-1.0</feature>
</featureManager>
新增特性之後,只要群體控制器還在執行,群體控制器的
messages.log 檔中,便會顯示下列訊息。
CWWKV0600I: HealthManager 特性已啟動。
- 在群體成員的 server.xml 檔中,將 healthAnalyzer-1.0 特性新增至 feature manager 段落。需要
healthAnalyzer 特性,以監視記憶體用量過多和記憶體洩漏情況。
<featureManager>
<feature>collectiveMember-1.0</feature>
<feature>healthAnalyzer-1.0</feature>
</featureManager>
新增特性之後,只要群體控制器還在執行,群體控制器的
messages.log 檔中,便會顯示下列訊息。
CWWKV0750I: healthAnalyzer 特性已啟動。
一旦在群體成員上啟動
healthAnalyzer 特性,群體控制器的
messages.log 檔中會顯示下列訊息。
CWWKV0612I: 已在 member_host_name,path_to_usr_directory,member_name 中啟動「性能分析器」。
註: 如果您希望同時啟動
healthAnalyzer 和
scalingMember 特性,
hostSingleton 規格必須為每一項服務分別設定一個唯一埠。
<hostSingleton name="ScalingMemberSingletonService" port="33333">
<hostSingleton name="HealthAnalyzerSingletonService" port="33334">
- 如果您想以叢集為目標,也必須將群體成員配置成伺服器叢集的一部分。如需伺服器叢集的相關資訊,請參閱設定 Liberty 伺服器叢集。
- 在群體控制器的 server.xml 檔中,新增一或多個 healthPolicy 元素。每一個 healthPolicy 元素各定義單一性能原則。如果需要多項原則,可在 server.xml 檔中新增多個性能原則元素。 如需在 server.xml 檔中新增 healthPolicy 元素的相關資訊,請參閱Liberty 的性能管理原則。
結果
一旦啟用性能原則,「智慧型管理」就可監視群體成員是否有問題,並執行診斷動作。