При запуске клиента RabbitMQ Java в микросервисе мне было интересно, следует ли вам каким-либо образом обеспечить правильное отключение соединения в случае, если JVM получает сигнал SIGTERM и завершает работу? Например, будет ли какая-либо разница в перехвате отключения, подобном следующему, например, позволит RabbitMQ гриппу sh его очереди?
Runtime.getRuntime().addShutdownHook(new Thread(() -> {
try {
connection.close();
} catch (IOException e) {
e.printStackTrace();
}
}));