JHipster не выдает ошибки в пользовательский интерфейс при сбое микросервиса

Мы используем микросервисную архитектуру JHipster, используя консул для обнаружения сервисов. У нас есть один микро сервис, который подключается к док-станции mongodb. При тестировании со стандартным угловым интерфейсом для сохранения нового объекта мы обнаружили, что отключение базы данных не приводит к ошибке в пользовательском интерфейсе. Из интерфейса консула я вижу, что сервис не проходит 1 из 2 проверок работоспособности, которые снова пройдут, когда я снова включу базу данных.

В логах шлюза у меня есть следующее:Caused by: com.netflix.client.ClientException: Load balancer does not have available server for client: import

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

1 ответ

Решение

Это нормально. Шлюз будет направлять запросы только к службам, которые проходят все проверки здоровья консула.

Обратите внимание, что по умолчанию Spring Boot автоматически настраивает проверку healtcheck для вашей базы данных. Он расположен в конечной точке /management/health вашего микросервиса.

Вы можете настроить проверку работоспособности Consul с помощью ключей spring.cloud.consul вашего микросервиса. Я не помню конкретные из них, но если вы используете IDEA, он автоматически завершит доступные свойства...

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