Apache Kafka’s Exactly-Once Semantics in Spring Cloud Stream Kafka Applications
Other parts in this blog series
Part 1: Introduction to Transactions in Spring Cloud Stream Kafka Applications
Part 2: Producer Initiated Transactions in Spring Cloud Stream Kafka Applications
Part 3: Synchronizing with External Transaction Managers in Spring Cloud Stream Kafka Applications
Part 4: Transactional Rollback Strategies with Spring Cloud Stream and Apache Kafka
With the fundamental analysis of how transactions work with Spring Cloud Stream Kafka applications out of the way from our previous discussions in this series, we have finally arrived at the elephant in the room: the exactly-once semantics, a much-discussed and required feature in streaming applications. In this part of this blog series, we look at how you can get exactly-once semantics in Spring Cloud Stream applications via Apache Kafka transactions. The knowledge of how transactions work from the previous sections makes it relatively easy to understand how Spring Cloud Stream Kafka applications achieve…