質問

私たちは現在、mulitple(時には大)ファイルをプロセスへJavaでbatchjobsを持っています。 これらのジョブの実行に時間がかかることがあります。私たちは、continueslyループ内で実行するJavaスレッドを使用して、JVMでこれらのファイルを直接実行します。 (プロセスへのファイルは、その後しばらく待つ)。

さて、私は、働いている会社は、WebLogicアプリケーション・サーバーでこれらのジョブを実行したいと考えています。それはより良いですが、ではないので、それは、同社の標準プラットフォームだから。

私が見る潜在的な問題は、BEA WebLogicがすべてのスレッドを監視し、デフォルトが長く実行スレッドが、その後10分は、潜在的に障害状態にサーバーにつながる可能STUCKスレッド、あると言うことです。

BEA Weblogicの中でこれを行うためのベストプラクティスは何ですか?

役に立ちましたか?

解決

BEA WebLogicが一定時間に対してのみ要求スレッドを監視します。リクエスト処理コードによって生成されたスレッドのために、それはしていません。我々は終了する3-4件まで時間を取るために使用されるWebLogicでジョブをスケジュールするクォーツ(OpenSymphonyのから)スケジューラを使用しています。

他のヒント

のWebLogic Serverは、時間を実行している長いスレッドをサポートし、(一般的に言えば、彼らは古き良きスレッドプールの周りのフレームワークです)長い仕事のために最適化されたワークマネージャを提供しています。 ワークマネージャのために、あなたはMaxThreadStuckTime、スレッドがスタックとして会計処理され、おそらく殺された後の時間を定義することができます。

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