@Gumus171991

Можно ли использовать микросервисы в таком случае?

Делаю API для сайта при помощи Nest JS. Проект неплохо так разросся и теперь нужно его как-то поделить для удобства будущей разработки.

Логически проект(магазин виртуальной валюты) можно поделить на 2 части: часть для обычных пользователей, часть для поставщиков и админов. Причём, первая часть может использовать код 2-й части(модели базы данных для статистики, заказов и т.д), а вторая часть может использовать модели базы данных первой части(таблицу юзеров, заказов и т.д.).

Какой подход будет в данном случае лучше: поделить этот проект на 2 независимых(но что тогда делать с базой данных? По сути придётся в каждом проекте повторять модели, а также подгонять модели под другой проект, если вдруг в нём они как-то изменились или наоборот), либо использовать микросервисы?
  • Вопрос задан
  • 155 просмотров
Решения вопроса 2
myks92
@myks92
Нашёл решение — пометь вопрос ответом!
Микросервисы, прежде всего, — это про масштабирование. Вам нужно сначала для чего вы хотите разделить код на сервисы и микросервисы. Если это хотелки, то это ошибка. Возможно вам просто стоит сделать хороший модульный монолит, провести рефакторинг существующего кода. При этом чтобы модули были слабо связанными между друг другом используя одну базу.

В микросервисах модели, обычно, не повторяются. Вам может казаться, что Пользователь в системе Аутентификации и Автор в статьях Блога это одно и то же, но это не так. Поля сущностей могут быть похожи, но это разные контексты использования, соотвественно разные модели.
Ответ написан
Комментировать
vabka
@vabka
Токсичный шарпист
Кажется, вам нужны не микросервисы, а просто небольшой рефакторинг
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы