Что может быть причиной того, что JMS или ОС не распознают разрыв соединения? - PullRequest
1 голос
/ 30 сентября 2011

У нас есть система с серверами, связывающимися через JMS. Иногда некоторые серверы не могут восстановить соединение после потери соединения с JMS. Потеря соединения происходит при перезапуске сервера, плохой сети ... Причина, по которой не удается восстановить соединение, - это «ClientID уже используется». ошибка.

выдержка из журнала JMS:

"Клиент на соединении guest@10.0.0.106: 2390 пытался использовать идентификатор клиента ABC, который уже используется

Конфликтующий clientID ABC принадлежит локальному соединению guest@10.0.0.106: 1098 "

Все серверы имеют разные clientID. Соединение на удаленном порту 1098 существовало до того, как сервер 10.0.0.106 потерял соединение с JMS. Порт 1098 на сервере ABC даже не открыт.

Я попытался использовать TCPview , когда возникла проблема. Старое соединение с сервером через порт 1098 все еще существует.

У меня есть 2 вопроса:

Возможно ли, чтобы JMS отправлял контрольные пакеты на удаленный удаленный порт 1098 без ошибки?

В чем может быть причина, по которой ОС не распознает разрыв соединения?

...