4

SignalR の新しいバージョンでは IConnectionFactory インターフェイスが廃止されましたが、クライアントの接続 ID を設定するために使用する推奨パターンは何ですか?

4

1 に答える 1

8

1.0 で SignalR クライアントの接続 ID を設定するための推奨されるパターンはなくなりました。

ベスト プラクティスは、アプリケーションのユーザーを接続 ID にマップする SignalR サーバーの状態を維持することです。このマップに接続 ID を追加する明白な場所は、OnConnected です。OnDisconnected を使用して、接続 ID を削除できます。

OnConnected でも実行できる別のオプションは、クライアントの接続 ID を、以前に IConnectionIdFactory.CreateConnectionId でクライアント用に作成した名前のグループに追加することです。当然、そのグループには 1 つのクライアントしか含まれないため、代わりにカスタム接続 ID に送信したすべてのメッセージをグループに送信できます。

注: マッピング オプションを使用する場合、AppDomain の再起動が心配で、この状態を永続的なものではなく何らかの静的変数に保存している場合は、OnReconnected のマップに接続 ID を追加することもできます。SignalR をスケールアウトする場合は、明らかに共有状態が必要です。

于 2013-01-16T03:19:52.610 に答える