1

以下のメッセージフローの手順と同様に機能するマルチサーバークラスター化フレームワークを開発したいと思います。

クライアントから

  • ゲートウェイサーバーがメッセージを受信する
  • ゲートウェイサーバーはACKメッセージ(UDP)を送信します
  • メッセージは、ファクトリを介してバイナリからオブジェクトにカスタムデシリアライズされます
  • 次に、メッセージはクラスター内のセカンダリサーバー(構成ベース)にルーティングされ、WCFを介してオブジェクトをセカンダリサーバーに送信します。
  • メッセージはセカンダリサーバーで処理されます。

サーバーから

  • セカンダリサーバーはメッセージを作成し、ゲートウェイサーバーに送信します
  • ゲートウェイサーバーのバイナリがメッセージをシリアル化します
  • ゲートウェイサーバーはバイナリをクライアントに送信し、ACKメッセージ(UDP)を待ちます

サーバーは、同じアプリケーション(WCFが初期化されます)または他のシステムのいずれかでローカルにサービスを指すように.configファイルを介して構成されます。

誰かがこのようなタイプのアーキテクチャを作成するために働いたことがありますか?もしそうなら、あなたが遭遇した問題のいくつかは何ですか?


編集
システムは既存のプロトコルのサーバー側になるため、クライアントからサーバーへのプロトコルは基本的に変更できませんが、状態管理(クライアントはすべての呼び出しでセッションを送信します)、暗号化、サーバールーティング、およびパケット保護。


編集
誰かが.Netでクラスタリングを使用するオープンソースプロジェクトへのリンクを提供することさえできますか?

4

2 に答える 2

1

長時間実行されるトランザクション全体でセッション状態を維持することは、大きなハードルになる可能性があります。負荷分散ソリューションが、あるサーバーで開始して別のサーバーで完了するセッションを考慮または対応できることを確認する必要があります。これは、ブラウザー/クライアントの Cookie や共通データベース サーバーのエントリなど、外部ソースを介して状態を共有することで実現できます。または、ハードウェア負荷分散ソリューションの多くは、「スティッキー セッション」を使用して、クライアントが常に同じサーバーに戻るようにします (たとえば、IP アドレスに基づいて)。

于 2009-01-05T15:13:02.220 に答える
0

編集 誰かが .Net でクラスタリングを使用するオープン ソース プロジェクトへのリンクを提供できますか?

このサンプル アプリケーションを確認してください。サイトによると...

テクノロジ ASP.NET と WCF を使用したサービス指向の n 層設計を実証

  • UI、ビジネス サービス、および DB アクセスの明確な分離
  • パフォーマンスのための設計とチューニング
  • 動的クラスタリングによる水平方向のスケーラブル
  • クラスタ化されたサービス ノードの集中構成管理
于 2009-06-29T17:16:19.980 に答える