Отправка объекта Json в тему кафки в Java - PullRequest
0 голосов
/ 04 февраля 2019

Я хочу отправить Json Object в мою тему kafka, но столкнулся с некоторой проблемой

Я использую pojo с единственной переменной экземпляра в качестве fileName, где я задаю имя файла и отправляю в тему Kafka.

 KafkaJsonSend objSend= new KafkaJsonSend();
            objSend.setFileName(filename);

          //Configure the Producer
            Properties configProperties = new Properties();
            configProperties.put(ProducerConfig.BOOTSTRAP_SERVERS_CONFIG,"10.10.51.10:9092");
            configProperties.put(ProducerConfig.KEY_SERIALIZER_CLASS_CONFIG, StringSerializer.class);
            configProperties.put(ProducerConfig.VALUE_SERIALIZER_CLASS_CONFIG,JsonSerializer.class);

            Producer<String, JsonNode> producer = new KafkaProducer<String, JsonNode>(configProperties);

            JsonNode  jsonNode = objectMapper.valueToTree(objSend);
            ProducerRecord<String, JsonNode> rec = new 

            ProducerRecord<String, JsonNode>("BlueShifts",jsonNode);
            producer.send(rec);

            producer.close();

Но когда я запускаю этот код, я получаю исключение, которое постоянно регистрируется в моей консоли.

Error: Uncaught error in kafka producer I/O thread

IllegalStateException: No entry found for connection 0

Kafka Error in java

У меня естьтоже пробовал с пружиной кафка но у меня это получилось в консоли

2019-02-04 16:43:13.938  INFO 4432 --- [nio-6020-exec-1]
o.a.k.clients.producer.ProducerConfig    : ProducerConfig values:
        acks = 1
        batch.size = 16384
        block.on.buffer.full = false
        bootstrap.servers = [10.0.2.15:9092]
        buffer.memory = 33554432
        client.id =
        compression.type = none
        connections.max.idle.ms = 540000
        interceptor.classes = null
        key.serializer = class org.apache.kafka.common.serialization.StringSerializer
        linger.ms = 0
        max.block.ms = 60000
        max.in.flight.requests.per.connection = 5
        max.request.size = 1048576
        metadata.fetch.timeout.ms = 60000
        metadata.max.age.ms = 300000
        metric.reporters = []
        metrics.num.samples = 2
        metrics.sample.window.ms = 30000
        partitioner.class = class org.apache.kafka.clients.producer.internals.DefaultPartitioner
        receive.buffer.bytes = 32768
        reconnect.backoff.ms = 50
        request.timeout.ms = 30000
        retries = 0
        retry.backoff.ms = 100
        sasl.jaas.config = null
        sasl.kerberos.kinit.cmd = /usr/bin/kinit
        sasl.kerberos.min.time.before.relogin = 60000
        sasl.kerberos.service.name = null
        sasl.kerberos.ticket.renew.jitter = 0.05
        sasl.kerberos.ticket.renew.window.factor = 0.8
        sasl.mechanism = GSSAPI
        security.protocol = PLAINTEXT
        send.buffer.bytes = 131072
        ssl.cipher.suites = null
        ssl.enabled.protocols = [TLSv1.2, TLSv1.1, TLSv1]
        ssl.endpoint.identification.algorithm = null
        ssl.key.password = null
        ssl.keymanager.algorithm = SunX509
        ssl.keystore.location = null
        ssl.keystore.password = null
        ssl.keystore.type = JKS
        ssl.protocol = TLS
        ssl.provider = null
        ssl.secure.random.implementation = null
        ssl.trustmanager.algorithm = PKIX
        ssl.truststore.location = null
        ssl.truststore.password = null
        ssl.truststore.type = JKS
        timeout.ms = 30000
        value.serializer = class org.springframework.kafka.support.serializer.JsonSerializer

2019-02-04 16:43:14.158  INFO 4432 --- [nio-6020-exec-1]
o.a.kafka.common.utils.AppInfoParser     : Kafka  version : 0.10.2.0
2019-02-04 16:43:14.160  INFO 4432 --- [nio-6020-exec-1]
o.a.kafka.common.utils.AppInfoParser     : Kafka  commitId :
576d93a8dc0cf421 2019-02-04 16:44:14.206 ERROR 4432 ---
[nio-6020-exec-1] o.s.k.support.LoggingProducerListener    : Exception thrown when sending a message with key='null' and
payload='KafkaJsonSend [fileName=a0a7caf336e8481fb
6db2de70d39029e_1549278789987.mp3]' to topic BlueShifts:
org.apache.kafka.common.errors.TimeoutException: Failed to update metadata after 60000 ms.

1 Ответ

0 голосов
/ 04 февраля 2019

Работает добавлено 10.10.51.10 kafka в C:\Windows\System32\drivers\etc в hosts файле, и это работает обоими способами .... вы можете сказать, почему он сопоставлен с kafka, почему он не может найти с ip

Вам необходимо правильно настроить брокеров Kafka для вашей сети: https://rmoff.net/2018/08/02/kafka-listeners-explained/

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