Как настроить потребителя Kafka для обработки сообщения ровно один раз? - PullRequest
0 голосов
/ 15 мая 2018

Существует ли какая-либо конфигурация для потребителя Kafka для чтения входящего сообщения ровно один раз? Я хочу, чтобы мои сообщения были в последовательности, и они должны быть прочитаны ровно один раз.

1 Ответ

0 голосов
/ 15 мая 2018

Начиная с версии 0.11, Kafka может быть сконфигурирован для гарантии точно один раз, установив для свойства processing.guarantee значение точно_once.

Вот фрагмент кода для установки свойства с помощью Stream API Kafka. Надеюсь, это поможет.

import org.apache.kafka.streams.kstream.KStreamBuilder;
import org.apache.kafka.streams.KafkaStreams;
import org.apache.kafka.streams.StreamsConfig;
import java.util.Properties;

Properties config = new Properties();
config.put(StreamsConfig.PROCESSING_GUARANTEE_CONFIG, StreamsConfig.EXACTLY_ONCE);

KStreamBuilder builder = new KStreamBuilder();
KafkaStreams streams = new KafkaStreams(builder, config);
streams.start();

Ссылка: https://kafka.apache.org/documentation/streams/.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...