микросервисов в какую-то отдельную либу(модуль), который потом импортите в нужные микросервисы? Насколько это удобно было и успешно ли?
Лучше не надо. Зачем это? Каждый сервис знает, какие ему данные нужны.
Делали и так и отдельные либы ДТО по сервисам. Один хрен неудобно )
это ж зло злобное :) хотя бы уж схем для генерации ДТОшек, а не самих ДТОшек
Ну вот мы сейчас такое делаем. Есть условно 5 из 10 микросервисов, в которых используется DTO_A. Цель типо чтобы не обновлять везде поля новые при каждой задаче, или же не удалять, а менять только в одном месте. То-есть идет переход на новую версию с новыми данными, и делаем вот такой подход, что все все ДТО создаем в отдельном репозитории, а оттуда импортим туда куда нужно. В итоге из-за этого много гемороя, что во всех микросервисах по сути одна и таже сущность имеет разную структуру ДТО(доп поля, методы, интерфейсы и тд)...
ну в теории звучит удобно, но переделывать один подход на другой геморой капец)
Ну не надо, а. Тогда у вас релиз сервисов связан друг с другом напрочь. Если у вас изменение одной сущности влияет на 10 микросервисов, значит, не такие уж они и независимые. Или у вас там еще база общая?
каждый сервис имеет свою базу со своими наборами сущностей. Есть сервис с Еластиком, есть графкл сервис и тд
Ну обычно и так релиз связан друг с другом, когда нужно выкатить фичу, а изменять нужно и в сервисе А и в сервисе еластика и в сервисе графкл
common shared library?
угу...
проблема не в том что надо править в нескольких местах, проблема в том что правит один человек, раздайте эти сервисы разным людям и пусть они вносят правки в эти дто независимо, а если уберёшь дублирование - получишь зависимость
ну вот условно ты же можешь не заполнять какое-то поле в дто, где тебе не нужно и все будет ок. Допустим были DtoA и DtoRequest + validation. Сейчас мы сделали DtoA + validation, которая будет использоваться для всего
Обсуждают сегодня