Я реализовал функцию высокой доступности Master-Slave AMQ, и она работает правильно, когда я пытался остановить само приложение, но не когда я пытался сбросить его порт. После удаления порта 61616 программа попытается восстановить соединение, и после ожидания 30000 мс в журнале отобразится сообщение WARF TransportFailure, но сам AMQ, по-видимому, находится в состоянии блокировки на главном компьютере, а не переключается на ведомое устройство. machine.
Можно ли использовать функцию автоматического переключения при отказе AMQ c на случай сброса порта? Например, автоматическое переключение на подчиненный компьютер после нескольких неудачных попыток переподключения? Приветствуются изменения на стороне сервера / клиента.
Версия ActiveMQ: 5.15.2
Конфигурация отработки отказа на стороне клиента: failover:(tcp://primary:61616?closeAsync=false&daemon=true,tcp://secondary:61616?closeAsync=false&daemon=true)?jms.prefetchPolicy.all=0
Это команды, которые я использовал для удаления порта:
sudo iptables -R INPUT 1 -p tcp --dport 61616 -j DROP
sudo iptables -R INPUT 1 -p tcp --dport 61616 -j REJECT