Как уменьшить задержки при использовании zuul, eureka, feign

При первоначальном перезапуске службы API. Если я вызову службу API напрямую, она сработает, но если я вызову ее через фиктивный клиент, я увижу резервное сообщение hystrix в течение нескольких секунд. И если служба API не запущена, когда я вызываю ее через zuul, я увижу следующее сообщение об ошибке:

com.netflix.zuul.exception.ZuulException: истекло время чтения Hystrix

Как я могу решить эту проблему?


person sunwoo    schedule 27.12.2018    source источник
comment
Хотя эта конкретная проблема довольно хорошо известна, в целом хорошей практикой является добавление некоторой трассировки стека/кода к вашим вопросам такого типа. Помогает сузить возможные причины.   -  person narendra-choudhary    schedule 27.12.2018


Ответы (1)


По умолчанию Zuul выдает исключение, когда восходящая служба недоступна, вместо выдачи 503/404. Вам нужно расширить ErrorFilter и обработать исключение с помощью специального поведения.

Вот почему, когда служба API не работает, вы получаете ZuulException.

Это поведение подробно обсуждалось в Zuul пропускает 503 исключения из вышестоящих микросервисов Ветка GitHub.

Некоторые подходы к работе с этим исключением объясняются в этой теме SO: Настройка исключения Zuul.

person narendra-choudhary    schedule 27.12.2018