質問

DBAについて質問があります:単一のWeb / DBサーバーセットアップから、Webサーバーの前にロードバランサーを備えた2つのWeb / 2 DBサーバーセットアップにスケールし、着信クエリを均等にルーティングする場合... MySQL Clusterのようなソリューションがどのように機能して、1つのDBサーバーに加えられた変更がすぐに他のDBサーバーに知られるようにします(そうしないと、他のDBサーバーにルーティングされたユーザーはデータを表示しないか、古いデータになります)、または少なくとも他のWebサーバーは、「ダーティデータ」を読み取っていることを認識します。最新のデータを取得するために、X秒後に再試行する必要がありますか?

ありがとう。

役に立ちましたか?

解決

Windowsサーバークラスタリング(高パフォーマンスクラスタリングと区別するため)には、共有外部ストレージアレイがあります。アクティブノードはストレージの所有権/制御を取得し、そのノードに障害が発生すると、ストレージは以前のパッシブノード(現在はアクティブノード)に「フェールオーバー」します。また、各ノードで独立したストレージと共有ストレージを可能にするさまざまなスキームがあります。ただし、これらには、アプリケーションがクラスター化されていることを認識し、2つのストレージセットの同期を保つのに十分なインテリジェンスが必要です。

他のヒント

これを行う2つの方法。 アクティブ/アクティブまたはアクティブ/パッシブ。 アクティブ/パッシブが最も一般的です  データはパッシブノードで同期されます。 クラスターは、アクティブノードがダウンしてもパッシブがすぐに切り替わるのでダウンタイムがないため、便利な構成です。 クラスタリングは、クラスター内の2つのノードを継続的に同期します。

SQLサーバーを使用していますが、クラスタリングの基本的な前提はmySQLでも同じだと思います。つまり、ハードウェア障害時のダウンタイムはありません(または目立ちません)。

編集:さらに、クラスタリングソフトウェアが同期を処理します。心配する必要はありません。クラスターノードを仮想ディレクトリとして表示します。仮想ディレクトリは、Windowsで1つのサーバーのように動作します。

これを説明する文書があります

http://www.sql-server-performance.com /articles/clustering/clustering_intro_p1.aspx

クラスタリングは、多数のノードがワークロードを処理する場所でもあり、これはアクティブ/アクティブクラスターとも呼ばれます。つまり、すべてのノードがワークロードを共有し、アクティブです。これは通常、Oracle RDBMSデータベース用のOracle RAC( RAC @ Wikipedia )などの専門ソフトウェアによって処理されます。 。 RACにより、Oracleは非常に大きなワークロードに拡張できます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top