Spring Cloud: интеграция с внешними веб-сервисами на примере Feign Client

Поделиться
HTML-код
  • Опубликовано: 14 июн 2023
  • На вебинаре будут рассмотрены способы построения веб-ориентированного приложения при помощи Spring Boot технологии, а также реализация внешнего взаимодействия при помощи RestTemplate и FeignClient. Будут рассмотрены способы настройки и конфигурирования: circuitbreaker, rate limiter и custom interceptors.
    План вебинара:
    - Создадим микросервис, который будет отдавать по POST запросу httр://localhost:8080/api/weather текущую погоду в зависимости от передаваемых в метод данных в JSON формате: {“longitude”: 20.2, “latitude”: 30.10, “date”: “2023-05-23 10:20:00”}.
    - Расширим функционал при помощи интеграции с другим сервисом получения данных о погоде.
    - Настройка FeignClient для улучшения показателей доступности и отказоустойчивости. Продемонстрируем практическое применение микросервисных шаблонов (circuitbreaker, rate limiter).

Комментарии • 9

  • @aleksandrloshkarev7051
    @aleksandrloshkarev7051 3 месяца назад

    Спасибо! Вебинар супер!
    делал свой фейн клиент для похода в 6 других микров, но вот про блокировку запросов не догадывался даже, очень интересно.

  • @MrNegroist
    @MrNegroist 8 месяцев назад +2

    спасибо . очень интересно и поучительно

  • @user-to6sl9dd6m
    @user-to6sl9dd6m 7 месяцев назад

    Спасибо. А нет ссылки на гит?

  • @user-to6sl9dd6m
    @user-to6sl9dd6m 7 месяцев назад

    Подскажите пожалуйста, почему проверка longitude и latitude (>20) осуществляется только на уровне repository, а не фасада, получается мы ходим в сервис и репозитори, чтобы узнать, что нам туда не надо, а надо обратиться к внешнему сервису. Чем это объясняется?

    • @user-rm1ki4rn6g
      @user-rm1ki4rn6g 7 месяцев назад +2

      Тут дело вот в чем, условием в репозитории longitude и latitude (>20) мы всего лишь моделируем источник данных нашего сервиса погоды на то что в нем нет данных для каких то координат, почему мы это делаем в репозитории потому что это самый ближний слой к данным, в данном проекте он как бы эмулирует базу данных. Часто когда не хотят подключать базу если она не важна во многих учебных проектах в репозитории объявляют поле которое содержит мопу с какими то значениями а репозиторий берет данные из этой мапы и отдает их, в данном случае можно с таким же успехом завести мапу но значений doouble в промежутке от 0 до 20 очень много поэтому проще написать if.
      Надеюсь кому то поможет))

    • @user-to6sl9dd6m
      @user-to6sl9dd6m 7 месяцев назад

      @@user-rm1ki4rn6g спасибо)

  • @opalev
    @opalev 28 дней назад

    Вызываю метод FeignClient'а внутри метода с аннотацией @Async, всегда попадаю на fallback метод.
    Дак как их в ассинхроне-то вызывать??? Кто-нибудь знает?
    Ролик весь промотал - тут ни слова про это, со стековерфлоу советы чот не работают никак

  • @user-so1ns8vg1k
    @user-so1ns8vg1k 6 месяцев назад

    четкий поцик

  • @nikolaykorotkov7908
    @nikolaykorotkov7908 5 месяцев назад +2

    "Через WebClient до сих пор еще делают"??? Вы это серьезно?