IIS上でホストするSignalRハブを持つasp.net mvcアプリケーションがあります。それをSignalR Serviceと名づけましょう。一部の内部サービスは、SignalR Serviceに外部クライアントにイベントを通知する要求を送信できます。外部クライアントがSignalR Serviceへの接続状態を確認することが重要です。また、お客様は、SignalR Serviceができるだけ早く利用できないことをお客様に通知して、お客様が通知を受け取らないことを知る必要があります。IIS上でサイトが停止した後にSignalRクライアントが切断されない
IISでSignalR Serviceを停止すると問題が発生します。停止後にSignalR Serviceのプロセスが存在するため、クライアントの接続は切断されません。クライアントはサイトが停止していることを認識できません。サイトは停止しているため、内部サービスでは到達できず、外部クライアントに通知を送信することはできません。
すべてのサービスの動作は予期されますが、ビジネスロジックには適合しません。
IISでisが停止している場合、SignalR Serviceドロップ接続を行うにはどうすればよいですか? IIS上のサイトのワークフローはまったくいいアイデアですか?
クライアントは再接続を試み、再接続試行のタイムアウト後にのみ停止するためですか? – Pawel
@Pawelいいえ、そうではありません。私はそれをテストしたとき、すべてのタイムアウトが経過しているに違いないので、私は長い間クライアントを離れました。 –
クライアントが接続されていない理由を調べるために、クライアントのログオンをオンにする必要があると思います。デフォルト設定では、クライアントはサーバが20秒未満でアクティブでないことに気付き、再接続を試みる必要があります。クライアントが30秒以内に再接続できない場合は、切断する必要があります。 – Pawel