私は、2 つのアクティブ/アクティブ負荷分散サーバー上に存在し、別のサーバー上のクラスター化されたデータベースにアクセスするマルチスレッド アプリを作成しています。明らかに、複数のスレッドが同時に同じレコードに書き込むことは望ましくありません。SQL はロックを提供して、これが起こらないようにします。アクティブ - アクティブ構成では衝突を完全に止めることはできませんが、アプリケーション内でミューテックスを使用することの利点と欠点は何ですか?
ありがとう、パトリック
私は、2 つのアクティブ/アクティブ負荷分散サーバー上に存在し、別のサーバー上のクラスター化されたデータベースにアクセスするマルチスレッド アプリを作成しています。明らかに、複数のスレッドが同時に同じレコードに書き込むことは望ましくありません。SQL はロックを提供して、これが起こらないようにします。アクティブ - アクティブ構成では衝突を完全に止めることはできませんが、アプリケーション内でミューテックスを使用することの利点と欠点は何ですか?
ありがとう、パトリック
アクティブ - アクティブ構成では衝突を完全に止めることはできませんが、アプリケーション内でミューテックスを使用することの利点と欠点は何ですか?
アプリケーション プロセス内でロックを待機することを優先することで、データベースで待機しているロックの量を減らすことで、パフォーマンスを改善できるかどうか疑問に思っているようです。それがどのようにパフォーマンス上の利点をもたらすかはわかりません。待っているのは待っている。
また、データベースのロックのみを使用する場合、設計はより単純になります。各スレッドを処理ノードと考えることができ、処理ノードが同じプロセスにあるのか、同じマシンにあるのかを気にする必要はありません。