5

Springフレームワークを使用せずにSpringJMXエクスポーターに似たものはありますか?

SimpleJMXは合理的であるように見えますが、1人の人間によってのみプッシュされる非常に若いフレームワークでもあるようです。

たくさんの属性、メソッド、クラスをJMXとして公開する必要がありますが、JMXAPIをいじったり大量のJMXインターフェースを記述したりしたくありません。

そして、プロジェクトにSpringを導入する方法はありません(念のため)。ヒントやアイデアは大歓迎です:-)

4

2 に答える 2

2

commons-dbcp-jmxのorg.weakref.jmxutilsライブラリにまたがってカムします。例を確認してください。ManagedBasicDataSource.java

@Managed(description = "The current number of active connections that have been allocated from this data source.")
public synchronized int getNumActive() {
    return super.getNumActive();
}

私はそのライブラリを自分で使用したことはありませんが、機能しているようです。

于 2012-06-26T08:55:21.580 に答える
2

わかりました。SimpleJMXJMXUtilsをすばやく評価しました。どちらも期待どおりに機能し、SpringJMXエクスポーターと非常によく似ています。ただし、私の場合はJMXUtilsの方が使いやすいと思います。

JMXUtilsを使用すると、すでに起動しているプラ​​ットフォームmbeanサーバーにMBeanを登録/登録解除するのが非常に簡単です。私の場合、アプリケーションサーバーとしてGlassFish V3を使用していましたが、自分のmbeanのためだけに別のMBeanサーバーを起動したくありませんでした。

SimpleJMXのAPIはこれを許可しておらず、SimpleJMX APIを使用して別のMBeanServerを起動し、作成されたmbeanを登録することを余儀なくされるか(APIを使用すると非常に簡単です)、mbeanを登録しようとしていじり始めます。プラットフォームmbeanサーバーに。後者はもう少し複雑なので、JMXUtilsを使用することにしました。

JMXUtilsの欠点は、Bean名の操作です。SimpleJMXは、アノテーション(domainName、beanName)で属性を使用します。これは非常に便利ですが、JMXUtilsでは、mbeanドメインを使用するときにmbeanに名前を付けるための構文を知っている必要があります。全体として大したことではありませんが、私の好みでは、SimpleJMXがこれに対するより良いソリューションを持っています。

肝心なのは、両方のライブラリが素晴らしく、それぞれの仕事をしているということです。JMXUtilsを使うことにしました。

于 2012-06-28T08:11:03.507 に答える