Category: Database

by Apache Kafka is a cool product, but if you are thinking about using it for event sourcing you should think again. Kafka is a great tool for delivering messages between producers and consumers and the optional topic durability allows you to store your messages permanently.

Topics are usually centered around and partitioned by entity types like "Orders", "Payments" or "Notifications" so we would have to go through all events for all"Orders" and filter them by their ID to load up a single "Order" entity.

It is possible we could make this scenario work by making our producer a consumer of its own events and effectively block until the event is committed and available in the other end of Kafka.

Related Articles