У меня есть адаптер (написанный в Spring Boot and Spring Integration), который восстанавливает валюту из двух разных источников (через REST и собственную библиотеку). Я фильтрую ненужные вещи, создаю экземпляры класса, известные в моей системе, и отправляю ставки в JMS-кластер. Я хочу, чтобы этот адаптер был реплицирован. Одновременно должен работать только один экземпляр. Когда один из них падает (я знаю это из конечной точки здоровья), другой должен начать публикацию ставок. Как я могу добиться такого эффекта? Я знаю, что доступные сервисы можно зарегистрировать с помощью Eureka, но как автоматически включить один из них?Приложения для кластеризации Spring Boot
ответ
Решение проблемы связано с использованием весеннего облачного кластера. Для ведения лидерства можно использовать либо zookeeper, либо hazelcast. Из немногих случаев только одному дается роль лидера. Если он выходит из строя, другой выполняет свою роль (сообщается через распространение события). Вы также можете использовать метод yieldLeadership, чтобы вручную отказаться от лидерства (если индикатор работоспособности говорит, что что-то не так с приложением).
Не зная подробностей, трудно дать вам рекомендацию.
Я бы сказал, что Эврика не строит то, чего вы пытаетесь достичь. Но это похоже на то, что вы хотите посмотреть в ZooKeeper. Также см. Eureka FAQ для справки. ZooKeeper был точно создан для того, чтобы делать то, что вы пытаетесь достичь: leader election.
С другой стороны, если вы можете выжить и с обслуживанием в течение нескольких секунд, я предлагаю вам использовать либо ваш скрипт, который будет контролировать конечную точку /health
, чтобы перезапустить службу, либо использовать системы, у которых уже есть эта сборка как Systemd или Docker, где вы можете определить политики перезагрузки.
- 1. Событие остановки приложения для приложения Spring-boot
- 2. Тестирование приложения Spring Boot?
- 3. Развертывание/размещение приложения Spring Boot
- 4. Spring Boot: изменить порт для веб-приложения
- 5. ResourceLoader null для простого приложения Spring Boot
- 6. Развертывание приложения Spring Boot для Tomcat 8
- 7. Как настроить org.hibernate.org.hibernate.FlushMode для приложения Spring Boot?
- 8. Ошибка запуска приложения Spring-Boot
- 9. Как добавить вложенные приложения Spring Boot, добавленные как зависимости от другого приложения Spring Boot, игнорируются?
- 10. Liberty Spring Boot vs Spring Boot
- 11. Алгоритм кластеризации для картографического приложения
- 12. Подход кластеризации для приложения C#
- 13. Запуск приложения Spring Boot на AWS
- 14. Tomcat Не читает Spring-Boot Свойства приложения
- 15. Spring Boot - обновить ResourceHandlerRegistry без перезапуска приложения
- 16. очень медленный запуск приложения загрузки Spring Boot
- 17. Отладка автономного приложения Spring Boot (Intellij IDEA)
- 18. Приложения Spring Boot останавливаются сразу после запуска
- 19. Доступ к SessionFactory из приложения Spring Boot
- 20. Ошибка загрузки приложения Spring Boot Page
- 21. ClassCastException при запуске приложения Spring Boot
- 22. Spring boot freemarker
- 23. Spring Boot - bean definition
- 24. Spring Boot + newRelic
- 25. Spring Boot Статические ресурсы
- 26. spring boot cloud config
- 27. Spring Boot Elasticsearch Конфигурация
- 28. Spring Boot YAML Config
- 29. running Spring Boot для REST
- 30. Настройка XADataSource для Spring-Boot