Synchronizing topic consumption of multiple business events originating from one event source #153
-
First of all, thank you for your inspiring content about your take on event-driven architecture principles and the derived kafka guidelines. A good piece to read 👍 When I read Lines 30 to 31 in c288278 I wondered what the reasoning behind this decision was. If an event source produces several business events where the order is important, this decision may lead to ordering problems for consumers as each event needs to have its own topic (see https://www.confluent.io/blog/put-several-event-types-kafka-topic/). Don't get me wrong, I do not want to criticize the decision. I'm just curious. |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 1 reply
-
Hi @thake , Thank you for the positive feedback and the very good question! We also had a lot of discussion about this limitation. But having only one Business Event Type on each topic had more benefits than drawbacks for us:
For your mentioned case, there are typically two patterns which can be used to resolve the issue:
If, for a given company, the ordering of different (but related) Business Event Types is that critical for the majority of use cases (and the limitation of the second pattern is not acceptable), I think that would justify to remove this restriction in their adaption of EDA. Technically, Galapagos does not impose this restriction (other than only one JSON schema can be active for a topic at a time), so it would not reduce its usability in that case. |
Beta Was this translation helpful? Give feedback.
Hi @thake ,
Thank you for the positive feedback and the very good question!
We also had a lot of discussion about this limitation. But having only one Business Event Type on each topic had more benefits than drawbacks for us: