Современный Spring Boot, это пожалуй лучшее, что есть в экосистеме Java на сегодняшний момент. Особенно если речь идет о Spring модулите.
Проблема заключается в том что в интеренете, нет ни одного реального примера Spring модулита, да и в принципе кроме Pet Clinic, нет ни одного проекта близкого к реальным задачам. Поэтому, команды зачастую, каждый раз заново придумывают эту архитектуру заново, наступая на одни и те же грабли.
На практике это обычно означает:
Одна БД;
Для каждого модуля своя схема;
Один Git репо;
Каждый модуль можно собирать и тестировать отдельно независимо друг от друга;
Для миграции используется liquibase или flyaway;
Обычно Gradle лучше подходит под модулит;
Деплой одной поставкой/релизом;
Некоторые модули взаимодействуют друг с другом с помощью REST API, а некоторые используют брокер сообщений;
Все это работает в одном неймспейсе Kubernetes если он выбран в качестве целевой платформы;
+-----------------------------+
| Object Storage |
| (e.g., AWS S3, MinIO) |
+-----------------------------+
|
v
+-----------------------------------------------------------+
| Kubernetes Namespace |
| |
| +-----------------------------------------------------+ |
| | API Gateway | |
| | (Spring Cloud Gateway) | |
| +-----------------------------------------------------+ |
| ^ ^ ^ ^ |
| | | | | |
| +----------------+ +----------------+ +-------+ |
| | Microservice 1 |<--->| Microservice 2 |<--->| ... | |
| | (REST & Kafka) | | (Kafka Only) | +-------+ |
| +----------------+ +----------------+ |
| |
| +----------------+ +----------------+ |
| | Microservice 3 |<--->| Microservice 4 | |
| | (REST Only) | | (Kafka Only) | |
| +----------------+ +----------------+ |
| |
| +----------------+ +----------------+ |
| | Microservice 5 |<--->| Microservice 6 | |
| | (Kafka Only) | | (REST & Kafka) | |
| +----------------+ +----------------+ |
| |
| +----------------+ +----------------+ |
| | Microservice 7 |<--->| Microservice 8 | |
| | (REST Only) | | (Kafka Only) | |
| +----------------+ +----------------+ |
| ^ ^ ^ ^ |
| | | | | |
| +-----------------------------------------------------+ |
| | Kafka Cluster | |
| | (Apache Kafka / Event Bus for Async Communication) | |
| +-----------------------------------------------------+ |
| |
| +-----------------------------------------------------+ |
| | PostgreSQL HA Database | |
| | (Primary + Standby Nodes for Data Persistence) | |
| +-----------------------------------------------------+ |
| |
+-----------------------------------------------------------+