Сервисная инфраструктура на spring boot

Статья демонстрирует создание сервисной архитектуры на Spring Boot, включая сервисы авторизации, конфигурации, API-шлюз и несколько веб-приложений. Для авторизации используется OAuth 2.0 с JWT, а конфигурация раздается через Spring Cloud Config, позволяя обновлять параметры без перезапуска. Шлюз Spring Cloud Gateway направляет запросы к внутренним сервисам.
Сервисная инфраструктура на spring boot
Изображение носит иллюстративный характер

В статье рассмотрены сервисы, работающие как с самостоятельной авторизацией, так и с использованием Spring Security. Приложение без авторизации демонстрирует генерацию кода из OpenAPI спецификации. Применена кастомная реализация общего предка сущностей для работы с БД и реализации стратегий мягкого и жёсткого удаления.

Для мониторинга используется Spring Boot Admin, позволяющий отслеживать состояние сервисов и их метрики. Для демонстрации добавлены кастомные метрики и эндпойнты actuator. В приложениях используется Swagger для тестирования API.

Статья наглядно демонстрирует подход к созданию сервисно-ориентированных или микросервисных систем. Для удобства работы с данными и исключениями применяются DTO и обработчики исключений. В качестве примера в статье демонстрируется работа с h2, но также возможно использование других СУБД.


Новое на сайте