Структура проекта для микросервисов - PullRequest
0 голосов
/ 19 февраля 2019

Один из проектов, над которыми я работаю, архитектор проекта говорит, что мы должны сделать каждый слой отдельным проектом maven, например, для сущностных компонентов есть один проект maven для интерфейсов dao, отдельный проект dao impl, там есть другой интерфейс службы проектаэто один сервис проекта, подразумевается, что есть другой проект, а контроллер - другой проект.В контроллере мы добавляем сущность, дао и сервисный проект в качестве зависимости.Это правильная структура?Каковы недостатки и преимущества этой структуры?Каким должен быть правильный путь к структуре проекта микроуслуг?У нас 9 микросервисов, так что почти 40 проектов.Это неуклюже.

1 Ответ

0 голосов
/ 19 февраля 2019

вам нужно сделать отдельные проекты для вещей, которые потребляются непосредственно другими микросервисами, такими как Beans.Например: и вещи, которые входят в микросервисный импл.

Почему нам нужно разделить:

Сервис A имеет 5 Бинов, которые доступны при использовании API IServiceAAPI

СейчасСлужба B использует Службу A с помощью API IServiceAAPI (при условии, что ваша инфраструктура автоматически создает объект IServiceAAPI, который вызывает фактическую службу) и возвращает один из компонентов.Так что либо вы переписываете те бины, которые используют исходный API из Сервиса A. Это помогает, когда API изменяет ваш код, автоматически получают обновления.

В общем, имеет смысл иметь один проект с именем ServiceAAPI, который содержит API, Beans и другие проекты под названием ServiceAImpl

...