Hitachi

Cosminexus V11 アプリケーションサーバ 機能解説 保守/移行編


2.5.3 データベースセッションフェイルオーバ機能でトラブルが発生した場合

ここでは,データベースセッションフェイルオーバ機能にトラブルが発生した場合の対処方法として,次の2種類のトラブルへの対処について説明します。

〈この項の構成〉

(1) J2EEサーバでトラブルが発生した場合

データベース上のデータへの変更を含む処理中に,J2EEサーバの障害でプロセスがダウンした場合,データベースのロールバックで障害前の状態に戻るため,システムの整合性が保たれます。J2EEサーバの障害を取り除き,Webアプリケーションを再開することでトラブルを回復できます。

J2EEサーバのホストがハングアップした場合や,ネットワークに障害が発生した場合,データベースの操作が中断されレコードの排他(グローバルセッション情報のロック)が未解放の状態となるときがあります。この場合,J2EEサーバが回復しWebアプリケーションを再開する前に,未解放の排他を解放する必要があります。

参考

未解放の排他の解放には,クライアントからデータベースへの無効接続を検出し,接続セッションを強制終了させるなどの方法があります。未解放の排他の解放について,HiRDBを使用する場合は,マニュアル「HiRDB UAP開発ガイド」のUAP処理時間監視機能に関する説明を参照してください。Oracleを使用する場合は,Oracleのマニュアルを参照してください。

(2) データベースでトラブルが発生した場合

データベースで障害が発生した場合,データベースを回復すればロールバックで障害前の状態に戻るため,データベースセッションフェイルオーバ機能を使用したWebアプリケーションは業務を再開できます。Webアプリケーションの再起動は必要ありません。

そのほかのデータベース障害時の対応については,各データベースのマニュアルを参照してください。