API интеграции на примере spring-boot java/kotlin [практика] [2/2]

preview_player
Показать описание
Всем привет, в этом видео решил рассказать про разработку API интеграций на практике, используя rest и retry template, механизмы отложенного выполнения.
Первый проект на котлине, возможно не все выполнено идеально.

Видео с теорией

Код на github:

Telegram канал:

Содержание:
0:00 - Вступление
0:20 - Зона ответственности вне кода
1:00 - Приложение пример для обработки событий и его описание
1:30 - Различные механизмы реализации вызовов внешней системы
2:05 - Почему это типичный пример интеграции
2:20 - Реализация на ивентах [Нормальное]
3:10 - Реализация на таске и выделенном пуле [Хорошее]
4:15 - Реализация на фичах/промисах и тд [Нормальное]
4:49 - Реализация на прямом вызове [Плохое]
5:08 - Почему ожидание это плохо
5:39 - Наглядная демонстрация работы
8:00 - Про критичность данных, как маштабировать решение
8:30 - Про ограничение запросов, как маштабировать решение
9:20 - Про метрики
9:45 - Повтор запросов при ошибке
10:10 - Конфигурация retry template
11:20 - Конфигурация может привести к деградации
12:20 - Как увеличить доставляемость с помощью повторов запросов
13:00 - Самый просто retry template
13:16 - Эмуляция дефектов, на примере отключения сети
14:00 - Отладка повторов запросов и метрики
14:40 - Куда вставить метрики
15:30 - Какие метрики можно считать
16:25 - Как написать тест на логику и метрики
17:20 - Как работает тест
18:40 - Тюнинг теста
19:51 - Дальнейшие планы
Рекомендации по теме
Комментарии
Автор

Telegram канал с анонсами, обсуждениями, вопросами по видео.

kirya-dev
Автор

Отлично. Видео действительно оказалось полезным. Спасибо

alexfrost
Автор

Просто потрясающе! Очень круто! Присоединяюсь к ждущим подробностей)))

TheDiablo
Автор

Киря, спасибо за отличный обзор интеграций!! Ты мегакрут! И кстати очень интересно рассказываешь!)) Сделай, пожалуйста, в дальнейшем более подробный цикл по этой теме (не общий обзор, а уже по каждому типу интеграции, синхронное, асинхронное, с ретраями, делэями и т.д. как на реальном проекте на проде, было бы мега круто с лайвкодингом на Java и твоими комметраиями, что для чего делаем и т.п.). И особенно по сбору метрик, как работать из кода Java с ELK и т.п. (слышал, что логи удобно собирать с помощью Kafka + ELK стека - вот про это например было бы очень здорово посмотреть, как в коде это реализуется на проде)

AlexSmile-yx
Автор

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

bardir
Автор

Было бы круто показать интеграции с кафкой)

krab