Встречается на собеседованиях • сегодня
Как можно достичь определенный вид доставки в Kafka
В Kafka можно управлять доставкой сообщений через параметры acks и min.insync.replicas.
1. Гарантированная доставка (надежная):
java
props.put("acks", "all"); // Ждем подтверждения от всех реплик
props.put("min.insync.replicas", "2"); // Минимум 2 синхронизированные реплики2. Высокая производительность (рискованная):
java
props.put("acks", "0"); // Не ждем подтверждения3. Баланс между надежностью и скоростью:
java
props.put("acks", "1"); // Ждем подтверждения только от лидераТакже можно использовать идиомы:
- Exactly-once: Включить
enable.idempotence=trueи транзакции. - At-least-once: Повторная отправка при ошибках (
retries > 0). - At-most-once:
retries = 0.
Пример транзакции:
java
producer.initTransactions();
producer.beginTransaction();
producer.send(record);
producer.commitTransaction();
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы