【发布时间】:2020-04-08 21:30:51
【问题描述】:
我尝试通过 curl 调用来指出我的请求:
架构注册表调用不通过任何代理隧道:
curl -X GET -i https://schema-registry-url:8081/subjects/someTopic-value/versions/
使用隧道代理调用架构注册表
curl -X GET -i https://schema-registry-url:8081/subjects/someTopic-value/versions/ --proxy http-proxy.net:3128
我的 Kafka 连接是通过我的 Spring-Boot 应用程序实现的。作为序列化程序,我有 KafkaAvroSerializer,这意味着模式注册表。这是我的 producerConfig 的概述:
`
public Map<String, Object> producerConfig(){
Map<String, Object> props = new HashMap<>();
props.put(ProducerConfig.BOOTSTRAP_SERVERS_CONFIG, brokerAddress);
props.put(ProducerConfig.KEY_SERIALIZER_CLASS_CONFIG, StringSerializer.class.getName());
props.put(ProducerConfig.VALUE_SERIALIZER_CLASS_CONFIG, KafkaAvroSerializer.class.getName());
props.put(KafkaAvroSerializerConfig.SCHEMA_REGISTRY_URL_CONFIG, schemaRegistry);
props.put(ProducerConfig.CLIENT_ID_CONFIG, groupId);
return props;
}
`
但是,此配置不会通过隧道连接 HTTP 代理。所以这就像第一次 curl 调用。
问题: 如何在我的生产者配置中指定 schema-registry 客户端应该通过代理?
-->有可以覆盖的方法吗?
-->还有其他参数可以设置吗?
感谢您的帮助和想法。
【问题讨论】:
标签: java apache-kafka confluent-schema-registry