2011-09-22 5 views
2

私たちは、重いデータ処理を行う複数のサービスを用意しており、複数のサーバーに複数のコピーを置いています。基本的な考え方はこれです:サーバー間で複数のサービスコピーを配布する最良の方法は何ですか?

  • は(任意に決定し、別のサーバーがこれらのサーバーのいずれかに連絡するために実行される実行可能スタブを持つことになります
  • その上で実行されているサービスの集合と同一のサーバーの複数のコピーを作成します。リストから)
  • 連絡先の最初のサーバーは「マスター」サーバーになり、さまざまなデータ処理タスクを他の「スレーブ」サーバーに委任します。

私はこれをどのように設計するかを考えるのにかなりの時間を費やしましたが、デザインはかなりうまくいくはずですが、このアプローチを改善する方法について誰かが示唆していると思っていました。

+2

アプリケーションファブリックの負荷分散をルックアップします。ロードバランサがあなたのために仕事をします。 –

+0

+1 for AppFabric。 – Deleted

+0

これはアプリケーションアーキテクチャの問題の詳細です。私はそれを残しておきますが、ちょっとしたことがあってもそれがPSEのものかもしれません。 – Kev

答えて

0

連絡される最初のサーバは、他の「スレーブ」 サーバに「マスター」サーバーと デリゲート様々なデータ処理タスクになります。

これは間違いなくではなく、私はこれをどのように構築するのですか。

私はクラウドコンピューティングを使用する目的でこれを構築します(真のクラウドコンピューティングを使用するかどうかにかかわらず)。私は要求を受け取り、それらの要求を待ち行列に保存するサービスを持っています。次に、キューから項目を取り出し、処理中にマークし、必要な処理を実行する複数のワーカーアプリケーションを用意します。完了すると、キューアイテムは完了したものとして更新されます。

この時点で、作業が完了したことをクライアントに通知するか、またはクライアントがキューの状態を読み取るためにサーバーをポーリングするようにすることができます。

1

ソリューションは、ロードバランサを使用することです。..

私は少しここに偏っています - 私はWSO2から来ましたので、 - WSO2 ESBは、ロードバランサとして使用することができ、オープンソース - そしてそれは、負荷の柔軟性を持っていますさまざまな基準に基づいてバランスをとってルーティングします。また、それは

あなたは

eBayが使用している... hereから製品をダウンロードすることができます...

Here

はWSO2 ESBと負荷分散関連のいくつかのサンプルです...だけでなくFOのロードバランシングをサポートしていますWSO2 ESBは、メインストリームAPIトラフィックで1日に10億件以上のトランザクションを処理します。

+0

私たちはロードバランシングを実際に探しているわけではありません。私たちはサービスの複数のコピーを実行させるためにすばやく汚れた方法を望みます。 –

関連する問題