Kafka Schema Registry 是 Apache Kafka 的一个组件,用于管理和存储 Avro、JSON Schema 等数据格式的 schema。它允许你在 Kafka 生产者和消费者之间定义和共享数据结构,从而实现数据序列化和反序列化的标准化。
kafka.schema.registry.url
,但它不是已知配置这通常意味着 Kafka 消费者或生产者配置中没有正确设置 kafka.schema.registry.url
。
kafka.schema.registry.url
。io.confluent:kafka-avro-serializer
。kafka.schema.registry.url
。例如:kafka.schema.registry.url
。例如:pom.xml
中添加了以下依赖:pom.xml
中添加了以下依赖:kafka.schema.registry.url
指向的地址是正确的,并且 Schema Registry 服务正在运行。以下是一个简单的 Kafka 生产者示例,使用 Avro 序列化:
import org.apache.kafka.clients.producer.KafkaProducer;
import org.apache.kafka.clients.producer.ProducerConfig;
import org.apache.kafka.clients.producer.ProducerRecord;
import org.apache.kafka.common.serialization.StringSerializer;
import io.confluent.kafka.serializers.KafkaAvroSerializer;
import java.util.Properties;
public class KafkaAvroProducer {
public static void main(String[] args) {
Properties props = new Properties();
props.put(ProducerConfig.BOOTSTRAP_SERVERS_CONFIG, "localhost:9092");
props.put(ProducerConfig.KEY_SERIALIZER_CLASS_CONFIG, StringSerializer.class.getName());
props.put(ProducerConfig.VALUE_SERIALIZER_CLASS_CONFIG, KafkaAvroSerializer.class.getName());
props.put("schema.registry.url", "http://localhost:8081");
KafkaProducer<String, Object> producer = new KafkaProducer<>(props);
ProducerRecord<String, Object> record = new ProducerRecord<>("my-topic", "key", new MyAvroClass("value"));
producer.send(record);
producer.close();
}
}
希望这些信息对你有所帮助!
没有搜到相关的沙龙