1

私は、システムの 1 つにディザスター リカバリーを設定する任務を負っています。プライマリ サーバーは FL にあり、セカンダリ サーバーはドイツにあります。アプリケーションは、社内のグローバル アプリケーションです。

ログ配布とミラーリングのどちらを使用すべきかわかりません。私が読んだことは、ミラーリングがアプリケーションのパフォーマンスに悪影響を及ぼすということです。これは本当ですか?これは、ユーザーがレコードを変更または保存するたびに、肯定的な応答を得るのに時間がかかることを意味しますか?

ありがとう

4

3 に答える 3

1

ミラーリングは、選択した動作モードに応じて、パフォーマンスに異なる影響を与える可能性があります。ミラーリングを行う場合は、高保護(自動フェイルオーバーありとなし)と高パフォーマンスの3つの動作モードを使用できます。

基本的に、これらは同期および非同期のミラーリングに相当します。高保護を使用すると、アプリケーションは、トランザクションが完了したと見なす前に、ミラーリングが完了するのを待機します。ハイパフォーマンスモードでは、アプリケーションはミラーリングがコミットされるのを待ちません。実際、最新のすべてのトランザクションがミラーのトランザクションログに保存されることは、どの時点でも保証されません。

ミラーリングで考慮すべき主な要因の1つは、ネットワークのラウンドトリップ時間です。レイテンシーが高くなると、パフォーマンスに大きな影響を与えます。パフォーマンスコストと特定のリカバリ(およびフェイルオーバー)要件を比較検討する必要があります。

まだ読んでいない場合は、SQLServer2005のデータベースミラーリングと データベースミラーリングのベストプラクティスとパフォーマンスに関する考慮事項をお読みください。

于 2010-06-29T03:35:33.757 に答える
0

ミラーリングにより、プライマリ環境と DR 環境の両方が常に 100% 同期されるため、データ損失の可能性がなくなります。ただし、ご指摘のとおり、これはパフォーマンスに悪影響を及ぼしますが、データ損失を許容できない状況 (金融アプリケーションなど) では必要になる場合があります。ログを配布して DR サイトのスタンバイ データベースに適用しても、ユーザーの応答時間には同じ影響はありませんが、データ損失が発生する可能性があるわずかな期間が生じます。

于 2010-06-29T02:49:26.397 に答える