SignalR:アプリプールのリサイクル後にクライアント情報を再取得する方法
-
27-10-2019 - |
質問
接続時に、クライアントIDを、静的変数に作成した他のクライアントおよびサブスクリプション情報にマップします。これは、アプリプールがリサイクルされるか、再コンパイルしてからマッピングが失われるまで正常に機能します。
クライアント接続はアプリプールのリサイクル後も維持されますが、OnConnectAsync()メソッドとOnReceivedAsync()メソッドのどちらにも何も表示されません。
Firebugで、クライアントから4分ごとに新しいPOSTが送信されていることがわかりました。着信POSTをキャプチャし、現在の持続的接続のクライアントマッピングを再構築するためにオーバーライドできるSignalRイベントはありますか?
ありがとうございます。
解決
SignalR0.4を使用していることを確認してください。OnReconnectedAsyncを処理できます。
https://github.com/SignalR/SignalR/wiki/PersistentConnection
免責事項:アプリケーションの状態を静的変数に格納すると、ファームでスケールアウトすることはできません(ただし、気にしないかもしれません)。
所属していません StackOverflow