Junior — Middle
Hogyan tárolja a Kafka az üzeneteket, és hogyan szolgáltatja azokat a fogyasztóknak?
sobes.tech MI
Válasz az MI-től
Kafka сохраняет сообщения в виде последовательных записей в разделах (partitions) топиков. Каждый топик разбит на несколько партиций, которые хранятся на дисках брокеров в виде логов — упорядоченных файлов, куда новые сообщения добавляются в конец.
Потребители читают сообщения, обращаясь к конкретной партиции и смещению (offset) — уникальному номеру сообщения в партиции. Kafka не удаляет сообщения сразу после прочтения, а хранит их в течение заданного времени или до достижения размера лога, что позволяет потребителям читать сообщения с нужного смещения в любое время.
Таким образом, Kafka реализует модель публикации-подписки с сохранением сообщений в логе и управлением смещениями на стороне потребителя.