2

WCF コールバック コントラクトを使用して開発されたチャット アプリケーションがあります。これは、クライアント サーバー通信に netTcp バインディングを使用します。

クライアントは、クライアント マシン (XP または Windows8 マシン) で実行される Windows フォーム アプリケーションです。

この WCF サービスは、サーバー マシンで Windows サービスとしてホストされています。サービスでクライアント セッション リストを維持しています。これは、サーバーに接続されている各クライアントの詳細を格納します。このリストは静的変数です。

ワークフローは、クライアントが接続操作を使用してサーバーに接続するたびに、クライアントの詳細がクライアント セッション リストに追加され、サーバーはこのセッション リストを使用して、必要に応じてクライアントにメッセージを返信します。

単一サーバー環境ではすべてが正常に機能します。負荷分散シナリオでこれを処理する方法を知りたいと思います。つまり、2 台のサーバー マシンがあり、一度に 1 台のサーバーがアクティブになります。サーバー 1 に障害が発生した場合、サーバー 2アクティブになります。このシナリオでは、2 つのサーバー間でクライアント セッション共有を管理し、クライアントに影響を与えずに通常どおり動作させるにはどうすればよいでしょうか?

4

1 に答える 1