0

に加入した後MarketDataRequest、しばらく見積もりを受け取ることができます。しかし、1 時間ほど経つと、価格の流れは下がります。この問題に対するブローカー サポートの対応は次のとおりです。

クライアントの TCP バッファーがいっぱいであるために更新をクライアントにプッシュできなかったため、クライアントを切断しました。これは、ネットワーク ドロップまたはアプリケーションが側で消費を停止し、受信バッファーがいっぱいになり、TCP ack の送信を停止したことが原因である可能性があります。

QuickFix で TCP バッファを解放するにはどうすればよいですか?

(QuickFix.NET v4.2 を使用)

4

1 に答える 1

1

あなたは彼らの問題の分析を誤解しています。彼らがあなたに伝えようとしているのは、(オペレーティング システムまたはネットワーク カードの) バッファーがいっぱいだったために、TCP 接続の端で追加のデータを受信できないことを観察したということです。これは、受信よりも速く送信していることを意味します。また、ネットワーク接続が不安定であるか、プロバイダーの 1 つによって調整されている可能性もあります (特に、インターネットまたは帯域幅が保証されていない回線を介してこれを行っている場合)。

自分で問題を分析するには、Wireshark などのツールを使用してネットワーク接続を監視し、パケットの受信と、TCP レベルでの悪影響を観察することができます。

コードが遅すぎるか、しばらくするとコードが詰まって新しいメッセージの処理に失敗している可能性があります。あなたは何を観察しますか?

于 2011-10-14T02:48:19.267 に答える