Sobes.tech
Junior — Middle

Използвали ли сте Kafka за реализиране на взаимодействие от страна на потребителя?

sobes.tech AI

Отговор от AI

Да, използвал съм Kafka като потребител за получаване на съобщения от теми. Обикновено, от страната на потребителя, се настройва Kafka Consumer, който се абонира за необходимите теми и обработва входящите съобщения в реално време.

Пример на Java с използване на Kafka Consumer API:

Properties props = new Properties();
props.put("bootstrap.servers", "localhost:9092");
props.put("group.id", "test-group");
props.put("key.deserializer", "org.apache.kafka.common.serialization.StringDeserializer");
props.put("value.deserializer", "org.apache.kafka.common.serialization.StringDeserializer");

KafkaConsumer<String, String> consumer = new KafkaConsumer<>(props);
consumer.subscribe(Arrays.asList("my-topic"));

while (true) {
    ConsumerRecords<String, String> records = consumer.poll(Duration.ofMillis(100));
    for (ConsumerRecord<String, String> record : records) {
        System.out.printf("offset = %d, key = %s, value = %s%n", record.offset(), record.key(), record.value());
        // тук логика за обработка на съобщението
    }
}

Този подход позволява асинхронно и надеждно получаване и обработка на данни от потоци от събития.