Cosminexus V9 アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)
Oracle RACを使用したOracleへの接続方法は,Oracleのバージョン,または負荷分散に使用する機能によって異なります。なお,接続できるトランザクションの種類はローカルトランザクションです。
Oracleのバージョン,負荷分散に使用する機能および使用するRARファイルの対応については,「3.6.6 Oracleと接続する場合の前提条件と注意事項」を参照してください。
負荷分散に使用する機能ごとに,Oracleへの接続方法について説明します。
アプリケーションサーバのクラスタコネクションプール機能を使用して,Oracle RACに接続します。アプリケーションサーバがデータベースアクセスの負荷を分散します。
クラスタコネクションプール機能の詳細については,3.17.2以降の説明を参照してください。
クラスタコネクションプール機能を使用した場合の負荷分散処理の流れと設定を次の図に示します。
図3-61 クラスタコネクションプール機能を使用した接続
この図では,3台構成のOracle RACシステムで,データベースノード1にはインスタンス1,データベースノード2にはインスタンス2,データベースノード3にはインスタンス3があります。データベースに接続するための設定を次に示します。
この設定によって,J2EEアプリケーション1,2からのデータベースアクセスはデータベースノード1,2,3に分散されます。
データベース障害が発生した場合,アプリケーションサーバが障害を検知します。障害が発生したデータベースに対応するメンバリソースアダプタが閉塞され,残っているインスタンスで処理が続行されます。
データベース障害が回復するとアプリケーションサーバは自動で閉塞を解除します。また,手動でも閉塞を解除できます。
DB ConnectorからOracle RACに接続し,Oracle RACの機能でデータベースアクセスの負荷を分散します。
Oracle RACの機能を使用した場合の負荷分散処理の流れと設定を次の図に示します。
図3-62 Oracle RACの機能を使用した接続
この図では,3台構成のOracle RACシステムで,データベースノード1にはインスタンス1,データベースノード2にはインスタンス2,データベースノード3にはインスタンス3があります。データベースに接続するための設定について説明します。
この設定によって,J2EEアプリケーション1,および2からのデータベースアクセスはデータベースノード1,2,3に分散されます。
データベース障害が発生した場合,Oracle RAC機能によって障害が発生したインスタンスが切り離され,残っているインスタンスで処理が続行されます。
アプリケーションサーバのコネクションプールを使用している場合,データベース回復時には次のどちらかの操作を実行してください。コネクションプールがクリアされ,これ以降のアクセスが正常に分散されます。
All Rights Reserved. Copyright (C) 2012, 2015, Hitachi, Ltd.