Skip to content
Kafka Is Fun

Lesson 5 of 5

KRaft vs ZooKeeper: Performance

1 min read

Overview

KIP-500 states what KRaft is meant to improve. It aims to manage metadata in a more scalable and robust way, with support for more partitions, and brokers should be able to start quickly even with hundreds of thousands or millions of partitions. Because standby controllers already hold the latest metadata, a controller failover does not need a lengthy reload. Brokers also pull changes from the metadata log instead of the controller pushing each one, so metadata changes arrive in the same order everywhere and brokers avoid ending up in a divergent state. These are the KIP's goals: the Apache documentation publishes no benchmark figures for partition counts or failover times, so measure them on your own cluster.

Production tip

Check yourself

In KRaft, how do brokers receive metadata changes?

Sources

Checked against Kafka 4.2 documentation on Oct 2026. Draft: not yet reviewed by a Kafka specialist. Releases move on, so confirm against the current documentation before you act on a number.

Try it in the simulator

Guided scenarios for this module — the simulator opens with the exercise already running.

Prefer a picture? Open the live cluster in 3D and watch records move between producer, brokers and consumers.

Browse all troubleshooting entries