2012-01-19 8 views
0

jbossを初めて使用していて、web.xmlのServiceMBeanとload-on-startupサーブレットタグの違いは何ですか?また、どちらが最初にロードされるのか、または同時にロードされるのかを知りたいですか?どのような状況で、私はMBeanを使用すべきです、そして、私がスタートアップサーブレットを使うべきかそれとも重要ではないのですか?起動クラス(ServiceMBeanを拡張)と起動時ロードサーブレット

すべての必要なシステムプロパティ(-DINSTALL_DIR = blahなど)が設定されているかどうかを確認するために、クラス/サーブレットを作成する必要があります。もしそうでなければ、そこで直ちに停止してください。それ以外の場合は、アプリケーションを起動してください。事前に

おかげ

-A

答えて

1

ServiceMBeanは、それはあなたのJVMの一部であり、JMXです。 web.xmlのload-on-startupサーブレットタグは、J2EEアプリケーションの一部です。

JMXは、JDK 1.5以降のJ2SEの一部です。したがって、JVMごとに1つのServiceMBeanを持つことができます。アプリケーションごとではありません。 JMXは、JVMの監視と管理に最も使用されます。ロードされたクラス数と実行中のスレッド数、メモリ消費量、ガベージコレクション統計、オンデマンドデッドロック検出などの情報へのアクセスを提供します。別の一般的な使い方は、キャッシュをリフレッシュすることです。

JMXでは、JMXコンテナがサポートしている管理コンソールを使用してアプリケーションを計測し、制御/監視することができます。例として、参照データキャッシュを実装するWebアプリケーションがあります。

データベースで顧客名が変更されているため、キャッシュをリフレッシュする必要があることがありました。 MBeanインターフェイスでリフレッシュメソッドを使用していた場合は、JMXコンソールを使用してこのイベントをトリガできる必要があります。 JMXコンソールは、J2EEサーバーに付属するWebまたはファットクライアントです。私たちのJ2EEサーバーはSNMPもサポートしています。つまり、標準のTivoliまたはUniCenterコンソールからメソッドを呼び出すことができます。 http://www.theserverside.com/news/1364664/J2EE-Application-Management-The-Power-of-JMX

あなたは、いくつかのasynchriousアクションをトリガーするために、ServiceMBeanへのリモートアクセスを必要としません。さらに、JVM全体ではなく、アプリケーションの範囲で検証する必要があります(理論的には、ServiceMBeanでこの問題を処理できます)。したがって、web.xmlのload-on-startupサーブレットタグとして行うのは当然です。このようにして、アプリケーションの起動時に検証が行われます。

もう1つの説明: ServiceMBeanがJBoss-way JMXを書きます。すべてのMBeanはサーバワイドです(アプリケーション全体ではありません)。そのため、上記のMBeanとServiceMBeanを自由に使用しています。

関連する問題