Apache Kafka is publish-subscribe, high-throughput, distributed messaging system. Kafka is fast with a single broker handling hundreds of MB (terabytes)/sec of reads and writes from several clients. Messages are replicated across the cluster and persisted to disk. Kafka can be used for stream processing, web site activity tracking, metrics collection and monitoring, and log aggregation.
The main components of Kafka architecture are Producer, Broker, Topic, and Consumer. Kafka keeps feeds of messages in topics. Producers send (or write) messages to topics and consumers, who subscribe ...