1


4

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

クライアントから

  • ゲートウェイサーバー受信メッセージ

  • ゲートウェイサーバーがACKメッセージ(UDP)を送信する

  • メッセージは、ファクトリを介してバイナリからオブジェクトにカスタムシリアル化解除されます。

  • 次にメッセージはクラスタ内のセカンダリサーバーにルーティングされ(構成ベース)、オブジェクトをWCF経由でセカンダリサーバーに送信します。

  • メッセージはセカンダリサーバで処理されます。

サーバーから

  • セカンダリサーバはメッセージを作成し、ゲートウェイサーバに送信します

  • ゲートウェイサーバーバイナリがメッセージをシリアル化します

  • ゲートウェイサーバーはバイナリをクライアントに送信し、ACKメッセージ(UDP)を待つ

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

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

'' '' '

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

'' '' '

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

2 Answer


1


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


0


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

http://msdn.microsoft.com/en-us/netframework/bb499684.aspx [このサンプルアプリケーション]をチェックしてください。 サイトによると…​

_ _ テクノロジーは、ASP.NETおよびWCFを使用したサービス指向のn層設計を実証しました

  • UI、ビジネスサービス、DBアクセスの明確な分離

  • パフォーマンスのための設計と調整

  • 動的クラスタリングにより水平方向にスケーラブル

  • クラスター化されたサービスノードの一元化された構成管理 _ _