2012-04-23 28 views
0

私の組織では、3層アプリケーションシステムによるデータ入力操作を行っています。設定は以下のように示されている:Weblogicサーバーがメモリを解放しないのはなぜですか?

  • オペレーティングシステム:JSF(Java EEのフレームワーク技術)
  • データベース:Oracle 11gの

問題をLinuxの

  • アプリケーションソフトウェアを使用して構築されています:各エントリに対して、エンタープライズBeanが作成され、Weblogic Sever内のキューに保持されます。 Beanはデータベースに送られていますが、Beanに使用されているメモリーは解放されていません。その結果、ヒットがピークに達し、メモリが16GB以上使用されている一定の時間が経過すると、サーバーは応答を停止し、メモリを解放するために再起動する必要があります。

    安全面を考慮すると、最大同時接続数を最大に設定しています。しかし、これは役に立たない。

    システムにはどのような問題がありますか?

  • 答えて

    1

    Beanがデータベースに送信されていますが、 Beanに使用されているメモリが解放されていません。

    DB接続などの特定のリソースがコード内で閉じられていない可能性があるため、メモリリークが発生する可能性があります。

    Heap Dump into an HPROF fileを取り、Eclipseのメモリアナライザツールを使用して、これを実行したり、VisualVM またはJConsole

    を使用して、これを監視します
    関連する問題