2014-02-12 78 views
0

無論如何,從發起者發送消息時設置請求超時?請求在Quickfix中暫停?

我們遇到了一個問題,我們遲到了接受方的回覆,並且應用程序進入了不響應模式。問題可能與網絡延遲等有關,但我認爲如果我們可以在這裏設置超時選項將會很好。

看到應用程序回調沒有找到任何內容。

我想與SendToTarget API設置超時選項,,

任何建議

+0

它真的是一個遲到的回覆,還是你可能意外地阻塞了回調線太久了?您必須確保您不在MessageCracker回調中執行耗時的操作。 –

+0

不,我們沒有在回調中執行時間昂貴的操作。是的,它只是一個遲到的回覆......因爲接受者不是很穩定,因爲我們現在也不是控制接受者部分......我們知道接受者方面的根本問題,但是作爲我們希望確保沒有阻止我們的發起人。 – Nauty

回答

1

你加在您的配置文件CheckLatencyMaxLatency並確認了嗎?

CheckLatency如果設置爲Y,必須在規定的秒數內收到來自對方的消息(請參閱MaxLatency)。如果系統使用本地時間作爲時間戳而不是GMT,那麼關閉此功能非常有用。

MaxLatency如果CheckLatency設置爲Y,則它定義了消息處理所允許的秒數等待時間。默認值爲120的正整數

+0

與CheckLatency和Max Latency一起嘗試,但它看起來像快速修復不使用這些標籤或實現丟失...你是否嘗試過延遲配置? – Nauty

0

我遇到使用QuickFix/N

同樣的問題,查看源代碼的1.4版本,從配置文件中讀取這些設置的部分被註釋掉和更換與硬編碼的默認值。

// FIXME to get from config if available 
session.MaxLatency = 120; 
session.CheckLatency = true;