Как настроить конечную точку инициатора WIX2 Integrator FIX, в которой используется автоматическое восстановление сеанса сеанса, поддерживаемое Quickfix / J?
In Quickfix / J , возможнонастроить автоматический переход на другой ресурс сеанса инициатора с помощью файла конфигурации FIX следующим образом (при условии, что два локальных сервера FIX прослушивают порты 9997,9998)
[SESSION]
SenderCompID=SYNAPSE
TargetCompID=EXEC
SocketConnectHost=localhost
SocketConnectPort=9997
SocketConnectHost1=localhost
SocketConnectPort1=9998
ReconnectInterval=5
Все примеры в документации WSO2 show FIXконечные точки, сконфигурированные с жестко закодированным хостом, таким как:
<send>
<endpoint>
<address uri="fix://localhost:9997?BeginString=FIX.4.4&SenderCompID=SYNAPSE&TargetCompID=EXEC"/>
</endpoint>
</send>
Этот шаблон для нас невозможен, поскольку целевой сервер FIX находится на удаленном сервере с именем хоста, отличающимся в зависимости от среды, поэтому я никогда не хочу использовать хардкорцелевой хост, как это.
В идеале я хотел бы сделать что-то вроде этого:
<send>
<address uri="fix://<dynamic hostname>:9997?BeginString=FIX.4.4&SenderCompID=SYNAPSE&TargetCompID=EXEC"/>
// the endpoint representing the above FIX Session
// where the target host is dynamically defined
// and not hardcoded anywhere in my car application
</send>
На стороне получателя / слушателя в качестве прокси-службы это работает нормально, потому что в прокси-службе он поднимает конфигурацию спредоставленный параметр URL конфигурации инициатора, поэтому аварийное переключение происходит "под капотом" движком FIX.
<parameter name="transport.fix.InitiatorConfigURL">quickfix.cfg</parameter>
Однако, похоже, что сделать то же самое невозможно, когда вы отправляете сообщение нацелевой сервер FIX.
У кого-нибудь есть хорошее предложение или пример того, как этого добиться?