私の理解では、マルチマスター DB アーキテクチャでは次のようになります。
- 2 つ以上の DB サーバーがあり、どちらも読み取り/書き込みマスターとして機能します。と
- これらの複数のマスター間で操作のバランスを取るには、ある種のロード バランサーが必要です。と
- サーバーが読み取りを取得するたびに、クエリされたデータをローカルで取得して返します。と
- サーバーが書き込みを取得するたびに、ローカルで書き込みとコミットを行いますが、その書き込みをリアルタイムで他のサーバーに複製します (これが、同じ書き込みが 2 つ以上の異なるマスターに送信されるのを防ぐために、システムが暗黙的にロード バランサーを必要とする理由です)。同時に); と
- アクティブ/アクティブまたはアクティブ/パッシブの設定を行うことができます。前者では、ロード バランサーはすべてのノード間で書き込みを真にバランスさせます。後者(アクティブ/パッシブ)がよくわからない
ですから、まず、私が上で述べたことが間違っている場合は、まず私を訂正するか、明確にしてください! 私が多かれ少なかれ目標を達成していると仮定します:
では、マルチマスターとピアツーピア (P2P) の (本当の) 違いは何ですか? P2P システムでは、読み取りはローカルで実行されて返され、書き込みはローカルで書き込まれ、すべてのピアに複製されます。