TGViewer
Женя Янченко Женя Янченко @jane_yanchenko · 5.51K subscribers
Post #238 3.68K
Топики и партиции

В архитектуре систем Кафка выступает в роли очереди сообщений: она принимает сообщения от продюсеров, а читают из нее консьюмеры.
Но технически Кафка — не очередь как RabbitMQ или Active MQ, а распределенный реплицируемый лог.

Сообщения в Кафке группируются по топикам, а топики разбиты на партиции.

Топик — это логическая группировка сообщений. Например, топик orders, куда поступают все заказы.

Партиция — это физическая группировка сообщений с четкой последовательностью. На диске каждая партиция живёт в отдельной папке.

Например, если топик orders имеет 3 партиции, физически это будут папки:

orders-1
orders-2


Партиция — это не один файл, а цепочка сегментов. Сегмент состоит из файлов: файл с данными, файл с индексом смещений и файл с индексом по меткам времени.

Кафка гарантирует порядок сообщений в рамках одной партиции, но не в рамках топика.
Порядок сообщений в партиции гарантируется, потому что сообщения последовательно дописываются в файлик .log последнего активного сегмента этой партиции.

Партиции используются для масштабирования. Если у нас много заказов, то мы можем одновременно писать разные заказы в разные партиции, а затем параллельно обрабатывать заказы из разных партиций.

Количество партиций у топика задается при его создании.
Можно ли добавить или удалить партиции потом?

Добавить партиций — да, можно.

Если мы определяли сообщение в конкретную партицию по ключу, то при изменении числа партиций сообщения с этим же ключом могут попасть уже в другую партицию. Подробнее рассмотрим этот момент в посте про продюсеров.


Уменьшить количество партиций в топике нельзя. Тут только создавать новый топик с нужным количеством и переключаться на него.

#kafka
  • 🔥 33
  • ❤ 17
  • 👍 10
  • ❤‍🔥 2
More from @jane_yanchenko
  1. Sep 21, 2026🔗 Подборка постов про Кафку Как обещала на стриме, собрала посты про Кафку в удобное огла…
  2. Sep 21, 2026🎞 Готова запись стрима про Кафку: https://youtu.be/2aRKsD-MWDA Большое спасибо всем, кто…
  3. Sep 16, 2026Сегодня стрим по Кафке в 19:00 Планируем не в формате доклада, а в формате вопрос-ответ, ч…
  4. Sep 16, 2026Post #413
  5. Sep 16, 2026Post #412
  6. Sep 16, 2026Post #411
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →