Eu sou novo em microsserviços e, pelo que entendi, o DDD diz que os microsserviços devem ser construídos em torno de domínios de negócios. Isso significa que bons microsserviços seriam como AppointmentScheduler e SendNotification no contexto de um sistema de reserva de reuniões.
Neste exemplo, esses dois microsserviços exigirão acesso aos dados do usuário para cumprir suas funções comerciais, e estou lutando com a melhor maneira de fornecê-los.
Para mim, um usuário parece um objeto que deveria existir como uma entidade dentro de um microsserviço , mas precisaria existir na maioria dos microsserviços, pois os dados do usuário são necessários em quase todos os lugares. Isso também introduz muita duplicação.
A outra opção é ter um microsserviço de usuário que forneça operações CRUD no banco de dados do usuário. Isso pode ser usado por outros microsserviços para acessar os dados do usuário, mas o problema que tenho com eles é que os serviços são agrupados firmemente até o ponto em que acabamos com um monólito distribuído, um pouco melhor do que um monólito em si.
Meu raciocínio parece válido? Como os outros estão lidando com o problema?