Задать вопрос
@Rammstein007

Как в kafka передать пакет сообщений?

Сейчас передается по одному сообщению как передать пачку сообщений? Ниже код который передает по одному сообщению.
public void sendMessages(List<EntryTestJson> msgList)
    {
        String topic = "test";
        try (Producer<String, String> producer = createProducer())
        {
            for (EntryTestJson message : msgList)
            {
                ProducerRecord<String, String> record = new ProducerRecord<>(topic, message.toString());
                producer.send(record, new RecordCallback());
                producer.flush();
                log.info("Отправлено сообщение: " + record.value());
            }
        } catch (Exception e)
        {
            log.error("Ошибка при отправке сообщения", e);
        }
    }
  • Вопрос задан
  • 267 просмотров
Подписаться 1 Средний Комментировать
Пригласить эксперта
Ответы на вопрос 2
@freeg0r
.. some dude ..
нет такого подхода для бизнес логики, Kafka client за кулисами сам формирует пакеты сообщений для отправки, граничный размер и время формирования которых вы можете менять настройками конфигурации (batch.size, linger.ms) и которые будут отправлены в один и тот же partition. Учитывая, что выбор partition может основываться на ключе сообщения, составление пакетов в ручную (в бизнес коде) может создать дополнительные проблемы.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
22 дек. 2024, в 20:40
10000 руб./за проект
22 дек. 2024, в 20:34
3000 руб./за проект
22 дек. 2024, в 20:12
10000 руб./за проект