2017-04-27 4 views
0

私は保守プロジェクトに取り組んでいます。アプリケーションはASP.Net MVC4上に構築され、Azureクラウドでホストされます。これはsignalRを使用します。今問題は、いくつかの間隔の後で、signalR connection urlがAbortedになってしまうことです。このため私はAzureポータルからホストされているアプリケーションを再起動する必要があります。しかし、クライアントが問題を報告するたびにこれを行うことはできません。 これがどのように修正されるのか、そしてなぜこれが起こっているのかを助けたり提案したり説明してください。私は、ブラウザのコンソールに入ったsignalRが期待通りに機能しない

次のログは:

SignalR:serverSentEventsトランスポートは接続に失敗しました。に戻ります。 SignalR: に接続しようとすると、foreverFrameの転送がタイムアウトしました。 SignalR:foreverFrameトランスポートに接続できませんでした。 をフォールバックしようとしています。 SignalR: に接続しようとするとタイムアウトしたlongPollingの転送が発生しました。 SignalR:longPollingトランスポートに接続できませんでした。 をフォールバックしようとしています。 SignalR:フォールバック転送が使い果たされました。 SignalR: 接続を停止しています。 SignalR:発動ajaxはasync = trueを打ち切ります。

Stopメソッドが呼び出されたり、クライアントにページから移動した場合のおかげで...

+0

例外はありますか? – janitha000

+0

私はコンソールログのいくつかを追加しました –

答えて

0

まず、確認してください。

第2に、多くの要因によって切断問題が発生する可能性があります。 this articleには、接続の有効期間といくつかの切断シナリオが記載されています。これは、問題の原因を見つけるのに役立ちます。

第3に、SignalRが紛失したトランスポート接続を再確立しようとしているときにタイムアウトに達しました。Timeout settingsApplication_Startに変更/増やしてください。

さらに、連続再接続のアプローチは、接続が失われ、再接続の試行がタイムアウトになった後で自動的に接続を再確立することができます。

$.connection.hub.disconnected(function() { 
    setTimeout(function() { 
     $.connection.hub.start(); 
    }, 5000); // Restart connection after 5 seconds. 
}); 
+0

これは助けになるとは思わない - 接続は接続さえしていない...私は、接続を確立することを妨げるサーバー側の問題があると思います。 – Pawel

+0

''サーバー側で接続が確立できないという問題があります。 ''はい、ハブサーバーの問題によってクライアントの接続が妨げられる可能性があります。 –

+0

私はデバッグしようとしていましたが、$ connection.hub.stateの出力が0で、接続中です。そして、それは4である「切断された」状態に直接移動します。 –

関連する問題