Я пытаюсь реализовать службу мониторинга для сервера ActiveMQ. Там я применил службу опроса, чтобы периодически подключаться к серверу ActiveMQ и выполнять операцию просмотра очереди для проверки работоспособности на сервере ActiveMQ.Запуск клиента ActiveMQ java зависает, когда сервер недоступен
Вот фрагмент кода, который я использую для начала соединения.
ActiveMQSslConnectionFactory connectionFactory = new ActiveMQSslConnectionFactory(amqUrl);
connectionFactory.setTrustStore(amqSslTrustStorePath);
connectionFactory.setTrustStorePassword(amqSslTrustStorePasswd);
connectionFactory.setKeyStore(amqSslKeyStorePath);
connectionFactory.setKeyStorePassword(amqSslKeyStorePasswd);
Connection connection = connectionFactory.createConnection(amqUser, amqPasswd);
connection.start();
Дело в том, когда сервер недоступен connection.start()
вызова зависает, не бросать ошибку. Для целей мониторинга мне нужно это обнаружить.
Я делаю что-то неправильно здесь или есть лучший способ сделать это?
UPDATE: Это происходит только тогда, когда я использую отказоустойчивой на основе ActiveMQ URL (например: failover:(ssl://192.168.1.112:61617,ssl://192.168.1.112:61619)?randomize=false
иначе это работа, как и ожидалось, что он бросает JMSException (например: ssl://192.168.1.112:61617
)
Ваш адрес основан на отказоустойчивости? –
да есть. 'failover: (ssl: //192.168.1.112: 61617, ssl: //192.168.1.112: 61619)? randomize = false' – dammina