JBOSSのアプリケーション内から、GlassFishのクライアントコンテナを使用するようなこと。
J2EE関連のライブラリ(JAR)などが競合しそうで、そのままでは使用できそうもない。
アイデア1) GlassFish環境でRMIサーバを立ち上げてRMIベースで連携
そもそも、GlassFishを使用するのはEJBを使うためなので、
RMI->EJB では、ごてごてしすぎだしパフォーマンスも悪くなる
EJB(RMI/IIOP)は単なる接続だけなら製品間のInteroperabilityがあるようだが、
LoadBalanceやFailOverがからむと、専用のクライアントコンテナが必要になったりする
アイデア2) JavaModeleSystemを使用する:まだドラフト状態
アイデア3)OSGi を利用する:バンドル毎に異なるライブラリを定義できる
JBOssなどのAppContainerから使用できるかが問題(要調査)
用語:
・Java Module System : 使用するライブラリの集合をモジュールとして定義できる
JSR 277 JAM形式のファイルにパッケージしてモジュールを分離
リポジトリを持ち、動作時に使用するものを判断してロード
RubyGemやPerlCPAMに似たしくみ
・OSGi Open Services Gateway initiative
JSR 291: Dynamic Component Support for Java SE
バンドル毎に異なるライブラリを指定してインストールを動的に行える
現状ではMinifestベース
使用している製品 Apache Felix、Knopflerfish、Eclipse Equinox
0 件のコメント:
コメントを投稿