簡體   English   中英

Azure 事件中心:Kafka 消費者在 java 中沒有進行任何調查

[英]Azure Event Hubs: Kafka Consumer polls nothing in java

我正在嘗試從 azure 事件中心讀取我的消費者中的消息

這是我的消費者配置:

private final KafkaConsumer<Integer, String> consumer;
private final String topic;

public SampleConsumer(String topic) throws IOException {
Properties props = new Properties();
props.load(new FileReader("src/main/resources/consumer.config"));
props.put(ConsumerConfig.BOOTSTRAP_SERVERS_CONFIG,
    "MyNamespace.servicebus.windows.net:9093");
props.put(ConsumerConfig.GROUP_ID_CONFIG, "GROUP_ID");
props.put(ConsumerConfig.ENABLE_AUTO_COMMIT_CONFIG, "true");
props.put(ConsumerConfig.AUTO_COMMIT_INTERVAL_MS_CONFIG, "1000");
props.put(ConsumerConfig.SESSION_TIMEOUT_MS_CONFIG, "30000");
props.put(ConsumerConfig.AUTO_OFFSET_RESET_CONFIG, "earliest");
props.put(ConsumerConfig.KEY_DESERIALIZER_CLASS_CONFIG,
    "org.apache.kafka.common.serialization.IntegerDeserializer");
props.put(ConsumerConfig.VALUE_DESERIALIZER_CLASS_CONFIG,
    "org.apache.kafka.common.serialization.StringDeserializer");

consumer = new KafkaConsumer<>(props);
this.topic = topic;
}

這是我的 consumer.config 文件:

bootstrap.servers=<MyNamespace>.servicebus.windows.net:9093
security.protocol=SASL_SSL
sasl.mechanism=PLAIN
sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required 
username="$**********" password="*******";

最后用這種方法我嘗試讀取記錄:

@Override
public void doWork() {
  consumer.subscribe(Collections.singletonList(this.topic));
  ConsumerRecords<Integer, String> records = consumer.poll(Duration.ofMillis(1000));
  System.out.println(records.count());
  for (ConsumerRecord<Integer, String> record : records) {
    System.out.println("Received message: (" + record.value());
  }
}

它正確連接到 azure 和事件中心。 然后它嘗試讀取記錄,但每次都返回 0 而沒有任何錯誤消息。 我在 inte.net 上搜索並使用了很多不同的解決方案,但到目前為止都沒有效果。 事件中心至少應該有一些記錄。

在此處輸入圖像描述

有人可以幫我弄清楚問題出在哪里嗎?

你在積極制作唱片嗎? 如果沒有,那么也許您應該通過為新組 ID 設置auto.offset.reset=earliest從主題的開頭開始消費

默認行為是在主題結束時開始,並在消費者啟動輪詢新事件

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM