Аварийное переключение в Quickfix - PullRequest
0 голосов
/ 03 февраля 2020

Ниже приведена моя конфигурация сеанса инициатора:

[DEFAULT]
ConnectionType=initiator
BeginString=FIX.4.4
SenderCompID=SendersID
SocketNodelay=Y
UseLocalTime=Y
StartTime=00:00:01
EndTime=23:59:59

[SESSION]
TargetCompID=Acceptor1ID
SocketConnectHost=48.153.163.217
SocketConnectPort=9840
SocketConnectHost1=48.153.165.144
SocketConnectPort1=9840
ReconnectInterval=10
HeartBtInt=5
FileStorePath=C:/Temp/quickfix/store/initiator
FileLogPath=C:/Temp/quickfix/logs/initiator
UseDataDictionary=N

, и это два совершенно одинаковых сеанса акцептора (настройка 48.153.163.217 и 48.153.165.144):

[DEFAULT]
ConnectionType=acceptor
BeginString=FIX.4.4
SenderCompID=Acceptor1ID
SocketAcceptPort=9840
SocketNodelay=Y
UseLocalTime=Y
StartTime=00:00:01
EndTime=23:59:59
FileStorePath=C:/Temp/quickfix/store/acceptor
FileLogPath=C:/Temp/quickfix/logs/acceptor
SocketReuseAddress=Y
UseDataDictionary=N

[SESSION]
TargetCompID=SendersID

Это то, что я тестировал: когда я отключаю SocketConnectHost (48.153.163.217), переключение на SocketConnectHost1 (48.153.165.144) занимает несколько минут. В качестве следующего шага я вернул SocketConnectHost (48.153.163.217) и завершил работу SocketConnectHost1 (48.153.165.144). Потребовалось вечно, чтобы переключиться обратно на SocketConnectHost (48.153.163.217).

Я никогда не терял ни одного сообщения. Все сообщения были восстановлены, но мой вопрос: (1) Как работает аварийное переключение? (2) С этой задержкой нельзя жить. Что я делаю не так, чтобы избежать задержки? (3) я должен рассмотреть любые другие параметры?

...