2012-03-01 9 views
4

Oracle RACデータベースを使用するアプリケーションがあります。データベースノードでメンテナンスタスクを実行するには、データベースノード1からすべての接続を移行してからメンテナンスのためにノードをオフに切り替えたいと思います。しばらくしてJDBC接続をリサイクル

私が望むのは、データベース接続がX分以上開いていないことを確認することです。 DBノードをメンテナンスすると、そのノードで開かれた接続は最大でX分後に閉じられ、他のノードで再作成されます。

使用される接続プールはcommon-dbcpで、tomcat-jdbcに移動する予定です。どちらのプールでも、しばらくして接続を強制的にリサイクルする設定オプションが表示されません。何か不足していますか?それとも標準的な選択肢ではないのですか?

+0

私はそのオプションを考えていません。あなたは借りてテストを使用することができますが、そのexpesive。おそらく、プール全体を破壊するオプションを追加して再作成し、保守のためにシステムをダウンさせるときに呼び出すことができます –

+0

ノード上で既に開いている接続が有効なので、borrowのテストは役に立ちません。プール全体を破壊すると、私が避けようとしている現在開かれている接続が切断されます。 – Guillaume

+0

私はそれをうまく破壊することができると思いますので、プールにない接続は返された後に破棄されます –

答えて

2

tomcat-jdbc documentationを見ると、私が必要とするほとんどのことを行うmaxAgeパラメータがあることがわかります。来週にいくつかの小切手を出して確認し、私の所見を反映させてこの回答を更新します。

+0

結果はどうですか? :) –