Gymterview
middle

Для чего нужен интерфейс Partitioner?

Интерфейс Partitioner в Producer API определяет, в какую партицию топика будет отправлено сообщение.

Partitioner по умолчанию (DefaultPartitioner) использует хеш ключа для выбора партиции, гарантируя, что сообщения с одинаковым ключом попадают в одну партицию. Можно реализовать пользовательский Partitioner для распределения сообщений на основе бизнес-логики.

На собеседовании: типичный пример кастомного Partitioner — маршрутизация сообщений по регионам или по приоритету. Важно помнить: порядок сообщений гарантируется только в пределах одной партиции, поэтому выбор партиции напрямую влияет на гарантии порядка.