[Udemy] Шаблоны проектирования с Spring WebFlux (2022)
Spring WebFlux - это реактивный неблокирующий веб-стек, который лучше масштабируется и обеспечивает лучшую производительность по сравнению с традиционным Spring Web MVC! В этом курсе мы изучаем различные шаблоны интеграции и отказоустойчивого проектирования с помощью Spring WebFlux для создания реактивных микросервисов.
К концу этого курса вы будете чувствовать себя комфортно:
Шаблоны интеграции:
Гораздо лучше справляться с взаимодействием нескольких реактивных микросервисов!
- Gateway Aggregator Pattern
Цель этого шаблона — уменьшить задержку в сети, когда клиенту необходимо взаимодействовать с несколькими внутренними сервисами для выполнения операции, а также действовать как фасад для сложных внутренних сервисов.
Целью этого шаблона является маршрутизация сообщения запроса к ряду серверных служб. Затем он использует агрегатор для сбора ответов.
- Шаблон Orchestrator (SAGA - для параллельного рабочего процесса)
Целью этого шаблона является организация нескольких серверных служб для обеспечения сложного рабочего процесса. Возьмем приложение электронной коммерции, в котором у нас есть платежная служба, служба инвентаризации, служба доставки и т. д. Заказ может быть выполнен только тогда, когда все эти службы возвращают ответ об успешном завершении. Что нужно сделать, если оплата прошла успешно, а доставка не удалась или наоборот. Как обрабатывать такие сложные транзакции, которые охватывают несколько микросервисов?
- Шаблон Orchestrator (для последовательного рабочего процесса)
Это то же самое, что и выше. Но для немного другого варианта использования, когда мы предоставляем последовательный рабочий процесс. Используйте этот шаблон для замены связанных вызовов микрослужбы.
Цель этого шаблона — использовать одно сообщение, содержащее список повторяющихся элементов, каждый из которых можно обрабатывать отдельно.
Устойчивые шаблоны:
Как создать более надежные и отказоустойчивые реактивные микросервисы.
Цель этого шаблона — сделать вашу службу более отказоустойчивой, когда удаленная служба не отвечает на ваши запросы своевременно.
Чтобы создать более надежный сервис, который обрабатывает периодически возникающие проблемы с сетью или проблемы с удаленными службами.
Целью этого шаблона является защита ваших служб и соблюдение соглашений об уровне обслуживания, когда зависимые удаленные службы не работают или недоступны.
- Шаблон ограничения скорости
Как защитить свои сервисы от DDoS-атаки? Как ограничить удаленные сетевые вызовы, чтобы удержать цену в рамках бюджета и т. д.
Целью этого шаблона является выделение набора ресурсов вашим службам на основе приоритета. Чтобы проблема в одной фиче не валила все приложение.
Материал на английском языке
Подробнее:
Скачать: