2016-01-19 9 views
2

Я запускаю приложение загрузки весны в кластерной настройке zookeeper. Я использую выборы лидеров, чтобы убедиться, что работает только один экземпляр приложения springboot. Как только лидер опускается, тогда другой узел (последователь) занимает лидера и начинает процесс. Если лидер уйдет, потому что мы завершаем приложение, тогда может работать новый лидер. но если сеть потеряна с лидером, тогда процесс у старого лидера все равно будет запущен, а также будет запускаться новый лидер. Таким образом, будут запущены два экземпляра. Есть ли способ остановить приложение у старого лидера? или я задаю неправильный вопрос. Я новичок в Springboot и Zookeeper. Исправьте меня, если я ошибаюсь!Завершение загрузки приложения загрузки после соединения zookeeper потеряно

ответ

1

Вы можете сделать это с помощью spring-boot-actuator. У этого есть конечная точка /shutdown, которая делает именно то, что она говорит на олове. Обратите внимание, эта конечная точка не включена по умолчанию, так что вы должны включить его, установив следующее application.properties:

endpoints.shutdown.enabled=true 

Вы, вероятно, хотите настроить некоторые безопасности вокруг этого тоже, так как это не мудрая идея, чтобы кто-нибудь просто закрыть вниз по вашему приложению.

Для получения дополнительной информации см. docs