7

さまざまな動的 Web プロジェクトを持つ Web アプリケーションがあり、それぞれに一般的に EJB プロジェクトが含まれています。JNDI を介して互いの EJB から Bean とクラスを使用したり、同じデータベースを共有したり、独自のデータベースを使用したりするなど、それらの相互作用を維持したいと考えています。しかし、異なるサーバーに異なるプロジェクトを保持できるようにしたいとも考えています。

アーキテクチャと組織の観点から、この種のプロジェクトの適切な焦点は何ですか?

EAR をどのように使用する必要がありますか? それらすべてを支配し、暗闇の中でそれらを縛る1つのEAR? (申し訳ありませんが、その LOTR 参照を行う必要がありました)、またはサーバー/Web プロジェクトごとの EAR などですか?

4

3 に答える 3

2

ディスク スペースは安価ですが、すべてを 1 つの EAR に入れると、必要なのがサービス A だけであっても、アプリ サーバーはそれらすべてを実行する可能性があります。一般的に使用される EJB を分割して、それらを単独でデプロイするのが最善です。個々のサービスのコンポーネントを独自の EAR に格納します。

次に、例として JBoss を使用すると、アーティファクトを実行したいサーバーの deploy ディレクトリにアーティファクトをコピーするだけです。

OrderManagement.ear InventoryManagement.ear StoreFront.ear

その後、特定のサーバーにすべて、一部、または何も持たないことができます。

于 2009-01-09T20:11:27.677 に答える
1

バグ修正/アップグレードおよび回帰テストのシナリオに留意してください。同じEARにあるEJBモジュールが多いほど、モジュールの1つだけに新しい機能を修正または追加した場合でも、より多くのファンクションポイントで回帰テストが必要になります。

于 2009-01-12T03:17:00.563 に答える
1

EJB はモジュール化することを意図しているため、提供するサービスに応じて、展開する適切な EAR を提供する必要があります。また、MBean を使用して、独立したサービスとしてデプロイしてみてください。管理インターフェースは、デバッグとテストの際に非常に役立ちます。

于 2009-01-09T20:18:30.923 に答える