middle
Для чего нужен интерфейс Partitioner?
Интерфейс Partitioner в Producer API определяет, в какую партицию топика будет отправлено сообщение.
Partitioner по умолчанию (DefaultPartitioner) использует хеш ключа для выбора партиции, гарантируя, что сообщения с одинаковым ключом попадают в одну партицию. Можно реализовать пользовательский Partitioner для распределения сообщений на основе бизнес-логики.
На собеседовании: типичный пример кастомного Partitioner — маршрутизация сообщений по регионам или по приоритету. Важно помнить: порядок сообщений гарантируется только в пределах одной партиции, поэтому выбор партиции напрямую влияет на гарантии порядка.