apache camel kafka对合流模式注册表的支持

btqmn9zl  于 2021-06-06  发布在  Kafka
关注(0)|答案(2)|浏览(406)

我尝试创建camel route,kafka组件尝试使用 io.confluent.kafka.serializers.KafkaAvroDeserializer 和schemaregistry url以及其他组件参数。我不确定Kafka目前是否完全支持这一点。有人能评论一下吗?

from("kafka:{{kafka.notification.topic}}?brokers={{kafka.notification.brokers}}"
                + "&maxPollRecords={{kafka.notification.maxPollRecords}}"
                + "&seekTo={{kafka.notification.seekTo}}"
                + "&specificAvroReader=" + "true"
                + "&valueDeserializer=" + "io.confluent.kafka.serializers.KafkaAvroDeserializer"
                +"&schemaRegistryURL=localhost:9021"
                + "&allowManualCommit={{kafka.notification.autocommit}})
``` `specificAvroReader` &  `schemaRegistryURL` 是似乎不受支持的属性。
qxgroojn

qxgroojn1#

我相信目前让camel kafka使用confluent schema registry的唯一方法是编写一个定制的avroserilizer/avrodeserializer(io.confluent.kafka.serializers.abstractkafkavroserializer/io.confluent.kafka.serializers.abstractkafkavrodeserializer)。例如。:

BlablaDeserializer extends AbstractKafkaAvroDeserializer implements Deserializer<Object>

以及

BlablaSerializer extends AbstractKafkaAvroSerializer implements Serializer<Object>

然后在camel组件上设置它们。e、 g.价值为:

KafkaConfiguration kafkaConfiguration.setValueDeserializer(...)
w7t8yxp5

w7t8yxp52#

把这个加到gradle后就可以用了

compile 'org.apache.camel:camel-kafka:3.0.0-M2'

可以在此暂存存储库中找到https://repository.apache.org/content/repositories/orgapachecamel-1124/org/apache/camel/
我想3.0.0-m2将在下周初正式得到 Camel 的支持。
编辑:现在提供3.0.0-m2https://repository.apache.org/content/repositories/releases/org/apache/camel/apache-camel/3.0.0-m2/
支持camel-kafka和合流模式注册表

相关问题