0

私たちのデータベースでは、非アクティブなセッション数が GV$Session で高いことがわかりました。しかし、weblogic サーバーの接続プールを監視している間、DB に示されているほど多くの接続が見つかりませんでした。

接続リークのアプリケーション コードを確認しましたが、何も見つかりませんでした。ここで問題になっている可能性があることを示すのを手伝ってくれませんか。

ウェブロジック 8.1、オラクル 10g

4

2 に答える 2

0

Weblogic クラスタで実行していますか?

各管理対象サーバーは構成された数のデータベースへの接続を開くことに注意してください。したがって、10 個の JDBC 接続と 4 個の管理対象サーバーがある場合、40 個の開いているセッションになります。

次に、同じ資格情報を使用して同じ DB に複数のプールを構成しますか? 管理対象サーバーごとにそれらすべてを合計する必要があります。

于 2012-05-15T08:24:17.620 に答える
0

接続設定で各 JDBC に許可されている最大接続数を数えてください。次に、各 JDBC の各サーバーへのマッピングを確認します。

アプリケーションが実行されると、weblogic サーバーは DB への接続を作成し、ユーザーが切断する代わりに、非アクティブなセッションのままにします。したがって、weblogic で簡単に再利用できます。この数は、アプリケーションにかかる負荷が増えるにつれて、許可される最大数まで増加します。

1 つの JDBC のこの数を超えると、JVM はエラーを出し始めます。

しかし、接続は失われず、非アクティブです。あなたが持っているものに対してこのカウントを集計します。

私はそれらが同じになると思います。このような場合は、アプリケーションを調整して接続時間を短縮し、Web で利用可能な場合はより良い接続ロジックを試してください。

于 2012-05-17T13:01:20.700 に答える