This question is about message queueing in between a service architecture. There is hardly something to find about this topic.
The situation: Microservice A and microservice B. Microservice A deals about entity "something" and B needs to about. I keep it general to avoid discussions about boundaries.
In our case A sends a message which contains event and related entity id like Event: somethingCreated SomethingID: 1234
B consumes this message and if it needs further information it fetchs this from A with SomethingID.
The second approach would be that the message not only contains the information above but also meta data like Event: somethingCreated SomethingID: 1234 SomeFieldKey: someFieldValue ...
Lean message: Pro: * Less network usage * Always the same structure of messages Cons: * If information from A is needed on demand there must be some mechanism to catch e. g. network failures
Fat message: Pro: * Information is already there Con: * What if the attached information is not enough?
So it has both pros and cons and my intention here is to get an overview Which approach you are using.
Thanks for answers in advance