Spring Cloud Gateway и отказоустойчивость

Я читал о весенней облачной архитектуре и технологиях (таких как eureka, hystrix прерыватель цепи), используемых для предотвращения простоя вашего приложения из-за сбоя некоторых ваших микросервисов. И в целом весеннее облако предлагает использовать Spring Cloud Gateway в качестве точки входа для всех микросервисов. Итак, я задаюсь вопросом, как обеспечить отказоустойчивость самого весеннего облачного шлюза? Как я вижу прямо сейчас, если эта точка входа выйдет из строя, то все эти технологии, такие как eureka и hystrix прерыватель цепи, будут недоступны, поскольку они реализованы на уровне облачного шлюза spring. Теперь, когда шлюз весеннего облака не работает, все клиенты не смогут получить доступ ко всем службам за шлюзом весеннего облака. Так как же быть в подобных ситуациях?

Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
1
0
253
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Честно говоря, я не думаю, что это напрямую связано с Spring Cloud Gateway. Вопрос скорее в том, «Как развернуть высокодоступное Java-приложение?» (SCG — это приложение Spring).

Ответ зависит от платформы, которую вы используете.

  • Большинство платформ IAAS предоставляют собственные балансировщики нагрузки инфраструктуры, такие как ALB/ELB в AWS.

  • Платформа PAAS обычно включает готовые LB, например. Cloud Foundry или Kubernetes могут сделать это за вас.

DNS, вероятно, не лучший выбор по причинам, которые вы описали - TTL и кэширование клиента. Кроме того, у DNS на самом деле нет способа проверить работоспособность вышестоящей службы. Таким образом, использование DNS требует балансировки нагрузки на стороне клиента, когда клиент должен быть умным и аннулировать кеш/повторить попытку, если запрос не удался.

Другие вопросы по теме