Створення мікросервісів за допомогою багатомодульного проекту в Spring Boot

крок 1: Створіть батьківський модуль Maven

Для початку створіть батьківський модуль Maven. Цей батьківський модуль міститиме всі різні мікросервіси.

У файлі pom.xml батьківського модуля оголосіть дочірні модулі (ваші мікросервіси). Наприклад:


 auth-service  
 aws-service  

Цей розділ modules визначає дочірні модулі, які слугуватимуть вашими мікросервісами.

Крок 2: Встановіть тип пакування батьківського модуля як pom

У файлі pom.xml батьківського модуля встановіть тип пакування як pom:

pom

Це вказує Maven, що це батьківський модуль, а не артефакт для розгортання.

Крок 3: Створіть модулі мікросервісів

Тепер вам потрібно створити модулі мікросервісів. Ви можете зробити це в Eclipse, клацнувши правою кнопкою миші на проекті та вибравши New > Maven Module, або скористатися Spring Boot Initializer, щоб створити проект Spring Boot і вставити його в кореневу директорію батьківського проекту.

Ваша структура папок виглядатиме приблизно так:

pic

Приклад багатомодульного проекту з 2 мікросервісами

Крок 4: Налаштування властивостей додатка

У кожному модулі перейдіть до src/main/resources і створіть файл application.properties. Оскільки обидва модулі є мікросервісами, вони повинні працювати на різних портах, щоб уникнути конфліктів. У кожному файлі application.properties вкажіть унікальний номер порту:

server.port=

Замість `` вкажіть фактичний порт для кожного сервісу.

Крок 5: Написання бізнес-логіки

Тепер, коли ваші мікросервіси налаштовані, ви можете почати писати бізнес-логіку для кожного з них у відповідних модулях (або проектах Spring Boot).

Крок 6: Запуск мікросервісів

Поширене непорозуміння полягає в тому, що вам потрібно запустити батьківський модуль для запуску будь-яких мікросервісів. Однак це не так.

У реальному сценарії, коли ви розгортаєте код на сервері, ви будуєте JAR-файл для конкретного мікросервісу, який хочете запустити. Потім ви можете запускати кожен мікросервіс окремо, так само, як і будь-який додаток Spring Boot.

pic

Якщо ви хочете запустити різні мікросервіси на різних інстансах, вам просто потрібно побудувати та запустити різні JAR-файли на окремих серверах. Таким чином, ви матимете мікросервіси, які працюють на кількох інстансах.

Цей підхід організовує та структурує ваші мікросервіси у чистий і масштабований спосіб, що спрощує їх керування та розгортання окремо.

Перекладено з: Creating Microservices via a Multi-Module Project in Spring Boot

Leave a Reply

Your email address will not be published. Required fields are marked *