You send a message (for example some JSON) to a Kafka topic. Any number of clients subscribe to that topic with a specific start time-stamp. Pluck a message off the queue, compute with it, send an acknowledgement. Kafka provides strong assurances that all readers get all the messages and report success (it retries otherwise), even if some participants come and go.<p>Very useful if, say, you have some real world event and dozens of different micro services need to do something about that event, independently.<p>You can also just use it for logging.