Apache Kafka is publish-subscribe, high throughput, distributed messaging system. A single broker in Kafka could handle 100s MB (Terabytes)/sec of reads & writes from multiple clients. Messages are replicated across the cluster and persisted to disk. Kafka could 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 consume (or read) ...