Общий подход заключается в копировании этих данных. У каждого микросервиса есть копия данных, которая ему нужна, чтобы хорошо работать. Если вы думаете, что это делает ваше решение более сложным, вы правы - это компромисс для получения преимуществ самостоятельно предоставляемых изолированных сервисов.
Еще одна вещь, которую следует учитывать, - это то, что если у вас есть N микросервисов, которым нужно больше, чем ссылки на одни и те же биты данных, то, скорее всего, вам лучше будет хранить эти сценарии использования вместе в одном сервисе, чем разбивать его. Фред Джордж говорит о том, что нужно просто попытаться разделить ваши микросервисы на «сервисы сущностей»:
https://www.youtube.com/watch?v=vs_XiP5Lkgg
Я бы предложил не разрешать нескольким независимо развернутым сервисам читать и записывать одни и те же данные, потому что в результате вы получите соединение, предотвращающее, например, миграция схемы этих данных без потенциальных рисков.