«1. Введение
Spring Cloud Feign Client — это удобный декларативный REST-клиент, который мы используем для реализации связи между микросервисами.
В этом кратком руководстве мы покажем, как установить пользовательский тайм-аут соединения Feign Client, как глобально, так и для каждого клиента.
2. Настройки по умолчанию
Feign Client довольно настраиваемый.
Что касается тайм-аута, он позволяет нам настроить тайм-ауты как для чтения, так и для соединения. Тайм-аут соединения — это время, необходимое для рукопожатия TCP, а тайм-аут чтения, необходимый для чтения данных из сокета.
Время ожидания соединения и чтения по умолчанию составляет 10 и 60 секунд соответственно.
3. Глобально
Мы можем установить время ожидания подключения и чтения, которое применяется к каждому клиенту Feign в приложении, с помощью свойства feign.client.config.default, установленного в нашем файле application.yml:
feign:
client:
config:
default:
connectTimeout: 60000
readTimeout: 10000
Значения представляют количество миллисекунд до истечения времени ожидания.
4. Для каждого клиента
Также возможно установить эти тайм-ауты для конкретного клиента, назвав его:
feign:
client:
config:
FooClient:
connectTimeout: 10000
readTimeout: 20000
И, конечно же, мы могли бы указать глобальные настройки, а также переопределения для каждого клиента. вместе без проблем.
5. Заключение
В этом уроке мы объяснили, как настроить тайм-ауты Feign Client и как установить пользовательские значения в файле application.yml. Не стесняйтесь попробовать их, следуя нашему основному введению Feign.