とき、それはEARを使用することが適当であるとするときアプリは戦争であるべき?

StackOverflow https://stackoverflow.com/questions/1364273

質問

私たちは、WebLogicサーバー上で行うために、多くの春のWebアプリケーションを持っており、戦争がEARに行く必要があるとき、彼らはただのWARとして存在しなければならない時に興味があります。時折、戦争は共通ロジックのJARファイルにアクセスする必要がありますが、これらは、彼らはただのWARにパッケージ化することができたときにEARに行く必要があるだろう、なぜ私は表示されません。

私が理解から、いくつかの戦争がEARであり、あなたがそれらのWARのいずれかを変更する必要がある場合は、サーバーを更新するために全体のEARを再デプロイする必要があります。これは戦争すべてがバウンスするようになります。彼らはEARでなかった場合は、しかし、私はちょうど1つのWARを更新でき、バウンスする唯一のものであろう。

一人で立ってパッケージ化JARおよび共有ライブラリを使用して(WebLogicを使用)100個の異なるWARファイルを持つ何が問題なのですか?

任意の洞察力をありがとう!

役に立ちましたか?

解決

あなたが持っているすべてのWARファイルである場合は、

、その後、EARはあなたのWARの展開コンテナとしてのみ提供、限られた有用性です。あなたはこの方法での戦争の間にJARファイルを共有することにより、膨張のビットを保存し、それ自体には非常説得力はないということができます。

戦争、EJBの、JMS、JCAリソースを使用するフルJavaEEの/ J2EEアプリケーションを扱う際に

耳がしかし、必要不可欠である、などのアプリケーションのこれらの種類のコンポーネント間の相互作用と依存関係がで管理が非常に簡単ですEARます。

しかし、あなたがのためのWeblogicを使用しているすべてのWARコンテナであれば、あなたにも、あなたは、WebLogicから出るすべての機能を使用するために、TomcatやJettyのようなバニラのサーブレットコンテナを使用する場合があります。

他のヒント

私はほとんどすべてのコメントにskaffman者(一般的に)スポットに同意します。

あなたがEJBをせずに春を使用している場合は、

あなたはもちろん、WARファイルに固執することができます。私が見ることができるEARの必要はありません。

それでもJMSを利用するには、WebLogic上のWARファイルをデプロイしたい。ここで、

しかし、あなたの春のアプリがメッセージドリブンPOJOを使用している場合、私は見ることができます。

あなたがEJBまたはJCAを持っている場合は、EARが必要になることがありますが、私はJMSは、EARを義務付けていることを言わないだろう。私は、JMSを使用し、WebLogic上のWARファイルを展開し、それがうまく働いていました。

あなたがTomcatので行くとそこにWARを展開することを決定した場合は、ActiveMQのを使用する場合は、

、あなたはまだJMSの機能を維持することができます。

あなたが複数のWARで使用されているライブラリJARの共通セット、およびそのコレクションの大きさを持っている私の最後の雇用者がした状況、に実行する場合、

EARに複数のWARをパッケージ化する引数は、魅力的なことができますJARはかなりのものです。私たちの特定の状況では、各WARにパッケージ化共通JARファイルと3つのWARの合計サイズは、124メガバイトとなりました。これらのJARファイルを使用する各WARのクラスパスを含むEARにJARファイルを配置および構成することにより、3つの戦争を含有EARのフットプリントは40メガバイトまで減少しました。私は説得力のある理由ことを検討したい。

JAR(またはJARファイルのセット)は、常に、そのため、すべての戦争で共有できるのWebLogicの「ライブラリ」として展開することができるように、

ではなく、複数の共有ライブラリを持つことは、EARのために行くために説得力のある理由であってはなりません。 ISN」は右?

何がちょうど戦争を展開して、実際に間違っていない、開発者はタスクを得ることに関心ができるだけ早く会っています。それは、彼らは多くの場合、技術的負債を取るだろう、と彼らは立派なチームであるならば、彼らはその借金をきれいにすることを意味します。

このしかし、あなたが耳複雑さを避けるときに何が起こるか、問題を提示し、アプリケーションサーバに追加することでjarファイルを共有しますか?さらに多くの一般的な戦争だけのチームでは、アプリケーションサーバーへのアプリケーションの複雑さのすべての種類の負荷を軽減しています。彼らしばしば過剰に割り当てられたスケジュールで、実装する方が簡単だったというだけの理由。私は、しかし、今、私たちは新たな問題を抱えている、すべてでこのためにそれらを責めることはありません。標準のアプリケーションサーバを使用すると、システム側のカスタマイズを行う必要があり、使用することはできません。効果的なWebアプリケーションは、すべてのシステム上で出血しています。アプリケーションサーバーを維持した人は、今も、これは非常に明確な問題を提示し、エンタープライズ環境で...アプリケーション固有の詳細を知っている必要があります。

開発者は、システムの責任を取ることができ、彼らはまだ期限を満たしている必要があります。彼らは必然的に、すべてのOS上で出血、そして突然の開発者のみ可能管理者です。管理者は、アプリケーションがシステム側を使用しているのか分からない場合は、彼らは非常に大きな問題を引き起こす可能性があります。これらの不明確なラインは、常に両方の方向に向いて指、未知のシステム状態、およびチーム分離で終わるます。

彼らはその後、EARを使用する必要がありますか?いや、私はシステム・エンジニアですので、私はいつも彼らは別の商用アプリケーションのように独自のアプリケーションサーバーを展開することができると言います。 WARを展開することはサポートされている他のアプリケーション・サーバーのようなものである場合にはRPMの中に、それらはWARデプロイメントパイプラインを取得します。ない場合は、すべて1で、その後RPM ...かつてのチームがそのコストを外部化することができませんが、その後、耳は素晴らしいアイデアになります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top