Figure 11-3. Producers send messages by appending them to a topic-partition file, and consumers read these files sequentially. Apache Kafka [17, 18], Amazon Kinesis Streams [19], and Twitter’s DistributedLog [20, 21] are log-based message brokers that work like this.