0

HAProxy を使用して 3 つの SQL Server 2008 データベース サーバーの負荷を分散することは可能/実行可能/合理的ですか?

これが私たちの状況です。Amazon EC2 で負荷分散された 2 つの Web サーバーがあります。現在、1 つの実稼働 SQL Server 2008 DB サーバーを使用しています。そのサーバーは過負荷になり始めているため、さらに 2 台の DB サーバーを追加し、負荷分散ソリューションを実装したいと考えています。

Amazon EC2 では、仮想 IP アドレスを使用できないため、Windows ネットワーク負荷分散 (NLB) または VIP を必要とするその他の負荷分散方法を使用できません。

私たちのアプリケーションは読み取り負荷が高いですが、読み取りと書き込みを分離できないため、負荷分散ソリューションでこれを考慮する必要があります。

SQL Server の組み込みのレプリケーション機能を使用して、3 つの DB すべてを最新の状態に保つことを計画しています (遅延時間があることは理解していますが、許容範囲です)。

ご意見やご提案は大歓迎です。どうぞよろしくお願いいたします。

4

2 に答える 2

1

はい、これは実現可能です。ラボで試してみましたが、うまく機能します。

Web サーバーのファームが十分に大きい場合は、IP ハッシュによってセッションをスティッキーにすることができます。これにより、レプリケーションの待ち時間の問題が解決されます。負荷は均等に分散されませんが、接続プーリングが与えられた場合でも、負荷はおそらくそれほど分散されません (.NET を使用していると仮定します)。

また、レプリケーション トポロジとしてマージを使用する場合、ソリューションは、アプリケーション レベルで奇妙に切断された接続を処理できる限り、メンテナンスのために個々のサーバーをダウンさせることができるように、原則として十分にスケーリングし、回復力を備えている必要があります。

于 2011-02-25T12:07:52.367 に答える
0

書き込みトランザクションがバックエンドのすべての SQL サーバーにどのように到達するかが心配です。ピア ツー ピア レプリケーションのようなものを試すこともできますが、それは重要な設定です。

于 2011-02-07T22:52:58.337 に答える