У нас есть решение TIBCO EMS, которое использует встроенный перехват сервера в серверной среде 2-4. Если TIBCO админирует службы переадресации с одного сервера EMS на другой, предполагается, что соединения должны быть автоматически переведены на новый сервер на уровне обслуживания EMS. Для наших приложений на С#, использующих службу EMS, этого не происходит - наши пользовательские подключения не передаются на новый сервер после отказа, и мы не уверены, почему.
Наше приложение подключается к EMS только при запуске, поэтому, если администратор TIBCO запускает восстановление после того, как пользователи запустили наше приложение, пользователям необходимо перезапустить приложение для повторного подключения к новому серверу (наше соединение EMS использует строку сервера, включая все 4 производственные серверы EMS - если первая попытка не удалась, она переходит к следующему серверу в строке и снова пытается).
Я ищу автоматический подход, который будет периодически пытаться повторно подключаться к EMS, если он обнаружит, что соединение мертво, но я не уверен, как это лучше всего сделать.
Любые идеи? Мы используем TIBCO.EMS.dll версии 4.4.2 и .Net 2.x(приложение SmartClient)
Любая помощь будет оценена.