A Gentle Introduction to Event Streaming —Apache Kafka

Rishabh Agarwal
4 min readJul 7, 2022

Apache Kafka is a brilliant and important technology that is used for creating event-driven platforms. It has become fairly popular among developers in recent times, and chances are that you might find Kafka being used in several applications you use yourself. Kafka has revolutionized how we design software architectures and handle communication among several independent components of an application.

As the world around us becomes more and more intermingled with software and electronics technologies, there is a paradigm shift that we experience. A shift from a snapshot-based world to an event-driven world. This transformation is evident when we are using social media apps or reading news on applications such as Google News. When an event occurs in the natural world, it is reflected by the state change of application. Compare it to a newspaper that takes snapshots of the world at a fixed interval. With ever-growing penetration of technology, the use of such event-driven systems have become both a necessity and a requirement.

So What is Apache Kafka?

Let us take a look at the official definition provided by Confluent for Apache Kafka —

Apache Kafka is a real-time event-streaming platform that collects, stores, and processes messages. It provides great…

--

--

Rishabh Agarwal

Software Developer 2 @ Schrödinger | IIT CSE Graduate - Writes about Software Engineering!