Search⌘ K

The Architecture of Kafka

Explore the architecture of Kafka and its role in asynchronous microservices communication. Learn how Kafka handles message storage, topics, partitions, and APIs to support event sourcing, high throughput, and stream processing. Understand how Kafka ensures ordering and parallel processing for efficient data flow.

Introduction #

In the area of microservices, Kafka is an interesting option. In addition to typical features such as high throughput and low latency, Kafka can compensate for the failure of individual servers via replication and can scale with a larger number of servers.

Kafka stores the message history #

Above all, Kafka is able to store an extensive message history. Usually, MOMs aim only to deliver messages to recipients. The MOM then deletes the message because it has left the MOM’s area of responsibility, thus saving resources.

However, it also means that approaches such as event sourcing (see Events) are possible only if every microservice stores the event history itself. Kafka, on the other hand, can save records permanently. Kafka can also handle large amounts of data and can be distributed across multiple servers.

Kafka also has stream-processing capabilities. For this, applications receive the data records ...