ページの先頭行へ戻る
Symfoware Server V11.0.0 Mirroring Controller運用ガイド
Symfoware

2.5.4 副系ノードでの利用者業務の留意点

DBミラーリングサービスの運用中に、副系ノードでの参照系業務を実施する場合、以下に示すいくつかの留意点が必要です。留意点を守らなければ下記の問題が発生する可能性がありますので、十分注意してください。

排他待ち、デッドロック回避のための考慮

DBミラーリングシステムでは、副系ノードのDBミラーリングサービスの運用中にデータベース二重化処理として、副系ノードのデータベースに対して更新操作を行います。データベース二重化処理と、参照系業務が競合すると、排他待ち、あるいはデッドロックが発生する場合があります。また、データベース二重化処理が排他待ちになってしまうと、ノードの切替え時間にも影響を及ぼします。

副系ノードの負荷への考慮

参照系業務のアプリケーションが、DBミラーリングシステムのデータベース二重化処理に影響を及ぼすような負荷の高い処理を行うと、ノードの切替え時間にも影響を及ぼします。
参照系の業務アプリケーションは、データベース二重化処理性能を考慮の上実行してください。

縮退運用中の正系ノードの利用者業務への考慮

副系ノードでの参照系業務は、縮退運用を開始しても継続可能です。
しかし、以下の理由から縮退運用を開始した場合には、旧副系ノードの参照系業務を一旦停止して、ノード組込み後の新しい副系ノードで再開することを推奨します。

DBミラーリングサービス運用中のトランザクション整合性の考慮

RERUNログ反映のコミット順序の保証単位にDSIを選択した場合、DBミラーリングシステムによるデータベース二重化処理では、正系ノードのトランザクションを副系ノードでDSI単位に分割して多重でデータベースを更新します。このため、DBミラーリングサービスの運用中にデータベースの参照を行うと、DSI間でトランザクション整合性がない場合があります。
副系ノードの参照系業務でDSI間のトランザクションのコミット順序が保証されたデータベースの参照を実施したい場合には、RERUNログ反映のコミット順序の保証単位にロググループを選択してください。

なお、DBミラーリングシステムによるデータベース二重化処理では、正系ノードで確定していないトランザクションの更新結果を副系ノードで参照しないことが保証されています。

ポイント

RERUNログ反映のコミット順序の保証単位にロググループを選択した場合で、データベース二重化処理と参照系業務間で排他待ちが発生している資源については、rdblkinfコマンドによる資源の占有情報の出力により確認してください。

参照

  • Symfoware/RDBの排他制御の詳細については“解説書”を参照してください。

  • 排他の属性と選択方法の詳細については“アプリケーション開発ガイド(共通編)”を参照してください。

  • RERUNログ反映のコミット順序の保証単位は、RLP動作環境ファイルのREF_APPLY_MODEパラメタで指定します。RLP動作環境ファイルのREF_APPLY_MODEパラメタについては“Mirroring Controller セットアップガイド”の“RLP動作環境ファイルの編集”を参照してください。