I have the following problem which I don't know much about. I have a ServiceA that returns customer data on transactions and a ServiceB that has reports, also my environment uses Power BI from Microsoft. This is a more philosophical question, but I'm kind of stuck.
I use a message broker (Azure Service Bus) to communicate between the services. However, it seems to me that this should be used more for commands. This is where I am a bit lost and why I am asking.
My first question is about the actual communication betweenservices. As far as commands are concerned, it's fine to just usethe message broker to call a command and it gets executed. But howshould the reading be handled? Both ServiceA and ServiceB have someAPI so I connect it in some API Gateway or aggregator and return?Because I just can't think of any other way to read this data. Thenof course the question is whether Http API or Grpc API.
I might answer the second question. Service A saves a new user and Ineed to refresh the reports in Power BI. Should I call ServiceB ->Power BI? Or just Power BI?
I've tried searching and really read quite a few articles, but it's pretty much written in generalities everywhere and I'd need some commentary on my solution.