私はSignalRを使用することを学んでおり、これまでに私は成功しました。私はハブを実装することができます、私はビジネスロジックを実装することができます、私は私が欲しいサーバーからクライアント側の関数を呼び出すことができます、私はクライアントサイドからサーバー側のメソッドを呼び出すことができます。私を困惑させるのは理論です。なぜSIgnalRはポーリングより永遠にフレームを好むのですか?
実際には、私はこのvideoから情報を集めました。 SignalRは、WebSocketsを使用しており、これは1つの接続上でfull duplex channelを提供します。利用可能なWebSocketがない場合、代替プロトコルはEventSourceになります。それが利用できない場合は、永遠フレームが使用されます。それが利用できない場合、ロングポーリングが使用されます。永遠のフレームのような非常にハッキリな解決策がより古い慣習より好まれ、私は永遠のフレームを第3のオプションとして持ち、第4のオプションとしてポーリングするというSignalRの決定の背後にある論理的根拠に興味があります。
私はこの質問に対する答えを見つけようとしましたが、それはthere is a 3x max latency time in the case of long polling compared to forever framesと噂されています。これは事実ですか、そうであれば、すべてのブラウザやサブセットの事実ですか?
あなたの答えを理解していただきありがとうございます。これはすでにアップヴォートに値するものです。しかし、Pollerがデータを送信するたびにHTTPチャネルを開く必要があるため、3倍のレイテンシが実際に存在することを実際に確認できるかどうかは疑問です。 –
データの送信は同じ方法で動作します。両方のケースで新しいhttpリクエストが作成されるため、データを送信する際にforeverFrameとlongPollingの間に待ち時間に違いはないと言います。 – Pawel
受信時にレイテンシはありますか? –