kafka高级消费者API读取消息不完整

在实现kafka消费者的时候出现跳着消费数据的情况
比如,生产者生产的数据是0,1,2,3,4,5
java实现的消费者只消费到了2,5两个数字

java实现的消费者代码如下:

//声明一个线程池,用于消费各个partition
        ExecutorService executor=Executors.newFixedThreadPool(threadCount);
        //获取对应topic的消息队列
        final KafkaStream<byte[], byte[]> stream = consumerMap.get(topic).get(0);
            System.out.println("开始消费消息...");
            executor.execute(new Runnable() {
                @Override
                public void run() {
                    ConsumerIterator<byte[], byte[]> it = stream.iterator();
                    //有信息则消费,无信息将会阻塞
                    while (it.hasNext()){
                        try {
                            System.out.println("收到消息" + new String(it.next().message()));
                        } catch (Exception e) {
                            e.printStackTrace();
                            return;
                        }
                    }






发表于: 6月前   最后更新时间: 6月前   游览量:624
上一条: java客户端kakfa(2.11-0.10.2.1)无法获取服务端kafka(2.10-0.8.2.1)的KafkaConsuemer
下一条: 关于kafka集群的配置

评论…


  • topicCountMap<String(topic), Integer(number)>    这个number给的是几
    拿这个例子跑一下,什么都不要动。
    http://orchome.com/10
  • 评论…
    • in this conversation